Intel® Fortran Compiler Vectorization Diagnostics
We have a similar catalog of vectorization diagnostics for the Intel® C++ Compiler HERE
The following diagnostic messages from the vectorization report produced by the Intel® Fortran Compiler. To obtain a vectorization report, use the -vec-report[n] option in Intel® Fortran for Linux* and Intel® Fortran Mac OS* X, or from the Intel® Visual Fortran for Windows /Qvec-report[:n] option.
Diagnostics Number | Diagnostic Description |
Diagnostic 15043 | loop was not vectorized: nonstandard loop is not a vectorization candidate |
Diagnostic 15038 | loop was not vectorized: conditional assignment to a scalar |
Diagnostic 15015 | loop was not vectorized: unsupported data type |
Diagnostic 15011 | loop was not vectorized: statement cannot be vectorized |
Diagnostic 15046 | loop was not vectorized: existence of vector dependence |
Diagnostic 15018 | loop was not vectorized: not inner loop |
Diagnostic 15002 | LOOP WAS VECTORIZED |
Diagnostic 15003 | PARTIAL LOOP WAS VECTORIZED OpenMP SIMD LOOP WAS VECTORIZED REMAINDER LOOP WAS VECTORIZED FUSED LOOP WAS VECTORIZED REVERSED LOOP WAS VECTORIZED |
Diagnostic 15037 | loop was not vectorized: vectorization possible but seems inefficient remainder loop was not vectorized: vectorization possible but seems inefficient |
Diagnostic 15144 | vectorization support: unroll factor set to xxxx |
Diagnostic 15133 | vectorization support: reference xxxx has aligned access |
Diagnostic 15143 | loop was not vectorized: loop was transformed to memset or memcpy |
Diagnostic 15023 | loop was not vectorized: unsupported loop structure |
Diagnostic 15134 | vectorization support: reference xxxx has unaligned access |
Diagnostic 15126 | vectorization support: unaligned access used inside loop body |
Diagnostic 15048 | vector dependence: assumed ANTI dependence between xxxx line and xxxx line |
Diagnostic 15042 | pragma supersedes previous setting |
Diagnostic 15033 | loop was not vectorized: modifying order of operation not allowed under given switches |
Diagnostic 15032 | loop was not vectorized: unsupported reduction |
Diagnostic 15040 | loop was not vectorized: no instance of vectorized math function satisfies specified math function attributes |
Diagnostic 15028 | loop was not vectorized: must preserve precise exceptions under given switches |
Diagnostic 15021 | loop was not vectorized: #pragma novector used |
Diagnostic 15123 | loop was not vectorized: the freestanding compiler flag prevents vector library calls |
Diagnostic 13398 | Default vector length for function 'xxxx' is 1 and therefore invalid. A valid vector length needs to be explicitly specified. |
Diagnostic 13399 | The 'xxxx' processor is not supported for vector functions. |
Diagnostic 13395 | Command line flag overrides the target processor to 'xxxx' for the vector function xxxx where processor clause is 'xxxx'. |
Diagnostic 15092 | FUNCTION WAS VECTORIZED. |
Diagnostic 15140 | The function 'xxxx' declared as vector function in one module does not have prototype in another module. |
Diagnostic 15142 | No suitable vector variant of function 'xxxx' found. |
Diagnostic 15127 | vectorization support: call to function xxxx cannot be vectorized |
Diagnostic 13378 | loop was not vectorized with "simd assert" |
Diagnostic 13379 | loop was not vectorized with "simd" |
Diagnostic 18015 | Switch statement inside #pragma simd loop has more than <var> case labels |
Diagnostic 18016 | Switch statement in vector function has more than <var> case labels |
Diagnostic 15125 | Invalid vectorlength clause specified |
Diagnostic 15017 | loop was not vectorized: low trip count |
Diagnostic 15167 | loop was not vectorized: memory reference is not naturally aligned |
Diagnostic 13400 | The 'xxxx' processor specified in command line is not supported as default for vector functions |
Diagnostic 15163 | vectorization support: number of FP up converts: single precision to double precision <val> |
Diagnostic 15164 | vectorization support: number of FP down converts: double precision to single precision <val> |
Diagnostic 15156 | vectorization support: conversion from float to int will be emulated |
Diagnostic 15155 | conversion from int to float will be emulated |
Diagnostic 15122 | function can't be vectorized: too many registers required to return value (big vector length) |
Diagnostic 15135 | vectorization support: vectorization of this loop under -Os has impact on code size |