https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
Andrew Macleod changed:
What|Removed |Added
Status|NEW |RESOLVED
Resolution|---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
--- Comment #5 from CVS Commits ---
The master branch has been updated by Andrew Macleod :
https://gcc.gnu.org/g:27e4260166950b784fe270ba4f0cae9a66faf1c4
commit r12-6558-g27e4260166950b784fe270ba4f0cae9a66faf1c4
Author: Andrew MacLeod
Date:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
--- Comment #4 from Andrew Macleod ---
The IL generated is:
_1 = x_2(D) >> y_3(D);
_4 = _1 <= x_2(D);
return _4;
All that should be needed is for the right shift operator in range-ops to
implement lhs_op1_relation() to indicate that if
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
--- Comment #3 from Andrew Macleod ---
(In reply to Jakub Jelinek from comment #2)
> I think another case for ranger symbolic ranges?
indeed.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
Jakub Jelinek changed:
What|Removed |Added
CC||amacleod at redhat dot com,
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
Richard Biener changed:
What|Removed |Added
Ever confirmed|0 |1
Status|UNCONFIRMED
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
Andrew Pinski changed:
What|Removed |Added
Severity|normal |enhancement
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96707
--- Comment #1 from Gabriel Ravier ---
PS: This transformation can also be done with a very similar pattern where the
return statement is replaced with this : `return (x / y) <= x;`