[Bug rtl-optimization/46614] [4.5/4.6 Regression] gcc.dg/vect/vect-strided-u8-i8-gap4.c FAILs with -fno-rename-registers -fsched2-use-superblocks
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Nov 23 10:14:00 GMT 2010
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46614
--- Comment #5 from Uros Bizjak <ubizjak at gmail dot com> 2010-11-23 10:01:03 UTC ---
It looks that sched2 pass is to blame. For the original case, we have:
_.split4:
;; Function main1 (main1)
...
207 [sp:DI+0x30]=xmm8:V16QI
REG_DEAD: xmm8:V16QI
1158 xmm1:V16QI=xmm6:V16QI
208 xmm1:V16QI=vec_select
REG_EQUIV: [frame:DI-0x60]
209 [sp:DI+0x40]=xmm1:V16QI
REG_DEAD: xmm1:V16QI
210 xmm6:V16QI=vec_select
REG_DEAD: xmm5:V16QI
REG_EQUIV: [frame:DI-0x50]
211 [sp:DI+0x50]=xmm6:V16QI
REG_DEAD: xmm6:V16QI
...
468 NOTE_INSN_BASIC_BLOCK
1327 r12:SI=zero_extend([di:DI+0x35])
1328 r13:SI=zero_extend([sp:DI+0x50])
471 {bp:SI=bp:SI+r12:SI;clobber flags:CC;}
...
_.sched2:
;; Function main1 (main1)
...
1406 NOTE_INSN_PROLOGUE_END
223 dx:QI=[di:DI+0x2]
221 ax:QI=[di:DI+0x1]
8 xmm2:V16QI=unspec[[di:DI+0x11]] 40
1339 r12:SI=zero_extend([sp:DI+0x48])
1328 r13:SI=zero_extend([sp:DI+0x50])
6 xmm1:V16QI=unspec[[di:DI+0x1]] 40
...
211 [sp:DI+0x50]=xmm6:V16QI
REG_DEAD: xmm6:V16QI
1383 r10:SI=zero_extend([sp:DI+0x28])
209 [sp:DI+0x40]=xmm1:V16QI
REG_DEAD: xmm1:V16QI
...
See how (insn 1339) and (insn 1328) passed (insn 209) and (insn 211).
More information about the Gcc-bugs
mailing list