[Bug rtl-optimization/77541] [7 Regression] wrong code with 512bit vectors of int128 @ -O1
ubizjak at gmail dot com
gcc-bugzilla@gcc.gnu.org
Fri Sep 9 12:56:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77541
Uroš Bizjak <ubizjak at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |ra
Status|UNCONFIRMED |NEW
Last reconfirmed| |2016-09-09
CC| |ubizjak at gmail dot com,
| |vmakarov at gcc dot gnu.org
Component|target |rtl-optimization
Ever confirmed|0 |1
--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> ---
This is RA failure, where reload tries to fix up:
(insn 54 10 12 2 (parallel [
(set (reg:DI 105 [ x4 ])
(lshiftrt:DI (reg:DI 37 r8 [ x4 ])
(reg:QI 37 r8 [ x4 ])))
(clobber (reg:CC 17 flags))
]) pr77541.c:10 564 {*lshrdi3_1}
(expr_list:REG_DEAD (reg:QI 37 r8 [ x4 ])
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil))))
with:
(insn 56 10 58 2 (set (reg:DI 2 cx [orig:127 x4 ] [127])
(reg:DI 37 r8 [ x4 ])) pr77541.c:10 81 {*movdi_internal}
(nil))
(insn 58 56 54 2 (set (reg:QI 2 cx [orig:128 x4 ] [128])
(reg:QI 37 r8 [ x4 ])) pr77541.c:10 85 {*movqi_internal}
(nil))
(insn 54 58 12 2 (parallel [
(set (reg:DI 2 cx [orig:127 x4 ] [127])
(lshiftrt:DI (reg:DI 2 cx [orig:127 x4 ] [127])
(reg:QI 2 cx [orig:128 x4 ] [128])))
(clobber (reg:CC 17 flags))
]) pr77541.c:10 564 {*lshrdi3_1}
(nil))
Please note (insn 58) that overwrites the result of (insn 56), needed in (insn
54).
More information about the Gcc-bugs
mailing list