diff options
author | Sergey Shalnov <Sergey.Shalnov@intel.com> | 2017-11-21 19:52:01 +0000 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2017-11-21 20:52:01 +0100 |
commit | ab2c4ec8dcbe5d0b93d0250abd42ff9fb791e0b6 (patch) | |
tree | fe72a5134596e9817e96ad4798a31e9c87e5ae4b /gcc/doc | |
parent | 84fa214dea091e289950a41b70964de73a3c1172 (diff) | |
download | gcc-ab2c4ec8dcbe5d0b93d0250abd42ff9fb791e0b6.zip gcc-ab2c4ec8dcbe5d0b93d0250abd42ff9fb791e0b6.tar.gz gcc-ab2c4ec8dcbe5d0b93d0250abd42ff9fb791e0b6.tar.bz2 |
i386-opts.h (enum prefer_vector_width): Added new enum for the new option -mprefer-vector-width=[none|128|256|512].
* config/i386/i386-opts.h (enum prefer_vector_width): Added new enum
for the new option -mprefer-vector-width=[none|128|256|512].
* config/i386/i386.c (ix86_target_string): remove old style options
-mprefer-avx256 and make -mprefer-avx128 as alias.
(ix86_option_override_internal): Apply defaults for the
-mprefer-vector-width=[128|256] option.
* config/i386/i386.h (TARGET_PREFER_AVX128, TARGET_PREFER_AVX256):
Implement macros to work with -mprefer-vector-width=.
* config/i386/i386.opt: Implemented option
-mprefer-vector-width=[none|128|256|512].
* doc/invoke.texi: Documentation for
-mprefer-vector-width=[none|128|256|512].
gcc/testsuite/
* g++.dg/ext/pr57362.C (__attribute__): Test
prefer-vector-width=[128|256] target attribute.
* gcc.target/i386/avx512f-constant-float-return.c (dg-optioins):
Use -mprefer-vector-width=256 instead of -mprefer-avx256.
* gcc.target/i386/avx512f-prefer.c: Ditto.
* gcc.target/i386/pr82460-2.c: Ditto.
From-SVN: r255030
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 47323e5..eeb8756 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1196,7 +1196,7 @@ See RS/6000 and PowerPC Options. -mincoming-stack-boundary=@var{num} @gol -mcld -mcx16 -msahf -mmovbe -mcrc32 @gol -mrecip -mrecip=@var{opt} @gol --mvzeroupper -mprefer-avx128 -mprefer-avx256 @gol +-mvzeroupper -mprefer-avx128 -mprefer-vector-width=@var{opt} @gol -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -msse4 -mavx @gol -mavx2 -mavx512f -mavx512pf -mavx512er -mavx512cd -mavx512vl @gol -mavx512bw -mavx512dq -mavx512ifma -mavx512vbmi -msha -maes @gol @@ -26095,10 +26095,24 @@ intrinsics. This option instructs GCC to use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-vectorizer. -@item -mprefer-avx256 -@opindex mprefer-avx256 -This option instructs GCC to use 256-bit AVX instructions instead of -512-bit AVX instructions in the auto-vectorizer. +@item -mprefer-vector-width=@var{opt} +@opindex mprefer-vector-width +This option instructs GCC to use @var{opt}-bit vector width in instructions +instead of default on the selected platform. + +@table @samp +@item none +No extra limitations applied to GCC other than defined by the selected platform. + +@item 128 +Prefer 128-bit vector width for instructions. + +@item 256 +Prefer 256-bit vector width for instructions. + +@item 512 +Prefer 512-bit vector width for instructions. +@end table @item -mcx16 @opindex mcx16 |