[Bug target/91804] [10 regression] r265398 breaks gcc.target/powerpc/vec-rlmi-rlnm.c
segher at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Apr 1 18:11:00 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91804
Segher Boessenkool <segher at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |NEW
CC| |bergner at gcc dot gnu.org
--- Comment #1 from Segher Boessenkool <segher at gcc dot gnu.org> ---
This extra move is created by IRA:
Examining insn 22, def for 133
all ok and transp
Creating newreg=134 from oldreg=133
rescanning insn with uid = 22.
scanning new insn with uid = 25.
New r134: setting preferred ALTIVEC_REGS, alternative VSX_REGS
Why?!
It was
(insn 22 11 20 2 (set (reg:V16QI 133)
(vec_duplicate:V16QI (const_int 8 [0x8]))) "vec-rlmi-rlnm.c":45:10 1204
{xxspltib_v16qi}
(nil))
and it is used only in
(insn 23 19 9 2 (set (reg:V2DI 127)
(unspec:V2DI [
(reg:V16QI 133)
] UNSPEC_VSX_SIGN_EXTEND)) "vec-rlmi-rlnm.c":45:10 1533
{vsx_sign_extend_qi_v2di}
(expr_list:REG_DEAD (reg:V16QI 133)
(expr_list:REG_EQUAL (const_vector:V2DI [
(const_int 8 [0x8]) repeated x2
])
(nil))))
so copying it to another reg cannot help anything here?
Peter, can you take a look?
More information about the Gcc-bugs
mailing list