https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
Richard Biener changed:
What|Removed |Added
Status|NEW |ASSIGNED
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #9 from acsawdey at gcc dot gnu.org ---
OK, that makes sense, 64-bit target is an essential piece of this as part of
the problem is that the loop index variable i is not chosen as an induction
variable because it is not DImode. If you
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #8 from Alexander Monakov ---
Sorry, I've overlooked the mention of -m64 in comment #1. I used 'configure
--target=powerpc-linux-gnu' and didn't pass -m64.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #7 from acsawdey at gcc dot gnu.org ---
I just pulled that sms branch from
https://github.com/ispras/gcc-sms.git
and built it on ppc64le. sms-4 does not do any better than with trunk, we still
have the problem of incorrectly labelin
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
Alexander Monakov changed:
What|Removed |Added
CC||amonakov at gcc dot gnu.org,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #5 from Bill Schmidt ---
I guess the next step would be to step through why iv_number_of_iterations
thinks this loop could never terminate.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #4 from Bill Schmidt ---
Hm, does your simplification remove the possibility of overflow that could
occur with intermediate results?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #3 from acsawdey at gcc dot gnu.org ---
So, it comes down to the fact that this condition cannot ever be true, so the
loop is not in fact infinite:
infinite if: (expr_list:REG_DEP_TRUE (ne:SI (and:DI (minus:DI (plus:DI
(ashift:DI (
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
acsawdey at gcc dot gnu.org changed:
What|Removed |Added
Status|ASSIGNED|NEW
Assignee|acsa
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #2 from acsawdey at gcc dot gnu.org ---
Digging deeper, if i is not 64-bit, we don't choose it as one of the IVs, and
the loop iteration test gets converted based on ap instead. Then the math in
iv_number_of_iterations decides that it
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
--- Comment #1 from acsawdey at gcc dot gnu.org ---
At some point the doloop analysis must have changed and as a result declared
that the loop might run infinitely if compiled with -m64. This in turn causes
SMS to bail out and the test fails. The
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69992
acsawdey at gcc dot gnu.org changed:
What|Removed |Added
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed
12 matches
Mail list logo