On 19 Aug 15:01, Richard Henderson wrote: > > ;; All vector modes including V?TImode, used in move patterns. > > (define_mode_iterator V16 > > - [(V32QI "TARGET_AVX") V16QI > > - (V16HI "TARGET_AVX") V8HI > > - (V8SI "TARGET_AVX") V4SI > > - (V4DI "TARGET_AVX") V2DI > > + [(V64QI "TARGET_AVX512F") (V32QI "TARGET_AVX") V16QI > > + (V32HI "TARGET_AVX512F") (V16HI "TARGET_AVX") V8HI > > + (V16SI "TARGET_AVX512F") (V8SI "TARGET_AVX") V4SI > > + (V8DI "TARGET_AVX512F") (V4DI "TARGET_AVX") V2DI > > (V2TI "TARGET_AVX") V1TI > > - (V8SF "TARGET_AVX") V4SF > > - (V4DF "TARGET_AVX") V2DF]) > > + (V16SF "TARGET_AVX512F") (V8SF "TARGET_AVX") V4SF > > + (V8DF "TARGET_AVX512F") (V4DF "TARGET_AVX") V2DF]) > > Let's rename this VMOVE, and apply only that change as a separate patch.
Hello, I think this is kinda obvious. I've renamed V16 iterator into VMOVE. ChangeLog entry: 2013-08-20 Kirill Yukhin <kirill.yuk...@intel.com> * config/i386/sse.md (V16): Rename to... (VMOVE): this. (mov<mode>): Update iterator name. (*mov<mode>_internal): Ditto. (push<mode>1): Ditto. (movmisalign<mode>): Ditto. Bootstrap passing. I'll check it in into MT as obvious if nobody objects in 20 hrs. Thanks, K --- gcc/config/i386/sse.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gcc/config/i386/sse.md b/gcc/config/i386/sse.md index 4397498..5c07dd7 100644 --- a/gcc/config/i386/sse.md +++ b/gcc/config/i386/sse.md @@ -96,7 +96,7 @@ ]) ;; All vector modes including V?TImode, used in move patterns. -(define_mode_iterator V16 +(define_mode_iterator VMOVE [(V32QI "TARGET_AVX") V16QI (V16HI "TARGET_AVX") V8HI (V8SI "TARGET_AVX") V4SI @@ -435,8 +435,8 @@ ;; This is essential for maintaining stable calling conventions. (define_expand "mov<mode>" - [(set (match_operand:V16 0 "nonimmediate_operand") - (match_operand:V16 1 "nonimmediate_operand"))] + [(set (match_operand:VMOVE 0 "nonimmediate_operand") + (match_operand:VMOVE 1 "nonimmediate_operand"))] "TARGET_SSE" { ix86_expand_vector_move (<MODE>mode, operands); @@ -444,8 +444,8 @@ }) (define_insn "*mov<mode>_internal" - [(set (match_operand:V16 0 "nonimmediate_operand" "=x,x ,m") - (match_operand:V16 1 "nonimmediate_or_sse_const_operand" "C ,xm,x"))] + [(set (match_operand:VMOVE 0 "nonimmediate_operand" "=x,x ,m") + (match_operand:VMOVE 1 "nonimmediate_or_sse_const_operand" "C ,xm,x"))] "TARGET_SSE && (register_operand (operands[0], <MODE>mode) || register_operand (operands[1], <MODE>mode))" @@ -586,7 +586,7 @@ }) (define_expand "push<mode>1" - [(match_operand:V16 0 "register_operand")] + [(match_operand:VMOVE 0 "register_operand")] "TARGET_SSE" { ix86_expand_push (<MODE>mode, operands[0]); @@ -594,8 +594,8 @@ }) (define_expand "movmisalign<mode>" - [(set (match_operand:V16 0 "nonimmediate_operand") - (match_operand:V16 1 "nonimmediate_operand"))] + [(set (match_operand:VMOVE 0 "nonimmediate_operand") + (match_operand:VMOVE 1 "nonimmediate_operand"))] "TARGET_SSE" { ix86_expand_vector_move_misalign (<MODE>mode, operands); -- 1.7.11.7