New Vectorization Diagnostics starting from Intel(R) C++ Compiler 15.0

By Anoop Madhusoodhanan Prabha, Published: 02/23/2015, Last Updated: 10/31/2018

We have a similar catalog of vectorization diagnostics for the Intel® Fortran Compiler here.
We have a similar catalog of vectorization diagnostics for the Intel® C++ Compiler 14.0 and below
 here.

Diagnostic Number Diagnostic Description
Diagnostic 15304 loop was not vectorized: non-vectorizable loop instance from multiversioning
Diagnostic 15541 outer loop was not auto-vectorized: consider using SIMD directive
Diagnostic 15319 loop was not vectorized: novector directive used
Diagnostic 15331 xxxx was not vectorized: precis FP model implied by the command line or a directive prevents vectorization. Consider using fast FP model
Diagnostic 15335 xxxx was not vectorized: vectorization possible but seems inefficient. Use vector always directive or -vec-threshold0 to override
Diagnostic 15344 loop was not vectorized: vector dependence prevents vectorization xxxx
Diagnostic 15378 xxxx was not vectorized: -ffreestanding flag prevents vectorization of integer divide/remainder
Diagnostic 15414 loop was not vectorized: nothing to vectorize since xxxx body became empty after optimizations
Diagnostic 15517 loops in this subroutine cannot be vectorized due to use of EBX/RBX register in inline ASM
Diagnostic 15521 loop was not vectorized: simplify loop control flow and/or explicitly compute the trip count outside of the loop
Diagnostic 15523 loop was not vectorized: cannot compute loop trip count outside of the loop
Diagnostic 15524 xxxx was not vectorized: search loop cannot be vectorized unless all memory references can be aligned vector load
Diagnostic 15527 loop was not vectorized: function call to xxxx cannot be vectorized
Diagnostic 15532 xxxx was not vectorized: compile time constraints prevent loop optimization. Consider using -O3    loop was not vectorized: function call to xxxx cannot be vectorized
Diagnostic 15535 xxxx was not vectorized: loop contains switch statement. Consider using if-else statement
Diagnostic 15537 loop was not vectorized: implied FP exception model prevents usage of SVML library needed for truncation or integer divide/remainder. Consider changing compiler flags and/or directives in the source to enable fast FP model and to mask FP
Diagnostic 15542 xxxx was not vectorized: inner loop was already vectorized
Diagnostic 15511 Not enough parameters of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15509 Extraneous parameter of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15513 Incorrect type of mask parameter of vector variant 'xxxx' of function 'xxxx' at position <val>
Diagnostic 15487 type converts: xxxx
Diagnostic 15479 lightweight vector operations: xxxx
Diagnostic 15476 scalar loop cost: xxxx
   

 

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804