https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65220

--- Comment #6 from Aldy Hernandez <aldyh at gcc dot gnu.org> ---
Created attachment 34886
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=34886&action=edit
corrected patch

I cheated and looked at test results before bootstrap.  There I found that
gcc.dg/torture/calleesave-sse.c failed because main() was trying to read %rdx
uninitialized.  This happened because the splitter was reading from operand 0
which had garbage in it.  What perhaps was wanted was operand 2.

Also, I saw somewhere else that a division by zero was being generated, which
later caused an unrecognizable insn ICE.  This was easy to fix with "UINTVAL
(operands[3]) != 0".

Corrected patch attached and being tested.

Reply via email to