]> git.ipfire.org Git - thirdparty/gcc.git/commit
2015-09-03 Naveen H.S <Naveen.Hurugalawadi@caviumnetworks.com>
authornaveenh <naveenh@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 3 Sep 2015 10:20:03 +0000 (10:20 +0000)
committernaveenh <naveenh@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 3 Sep 2015 10:20:03 +0000 (10:20 +0000)
commitf0e28f23215a985352f70d151d0b44d6584c0ce0
tree5015382f1627fbd7120f8d8be9eb4c48b0135017
parent5ea1a1ae151ccc085a6716a8f137dd9a64bbb793
2015-09-03  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

PR middle-end/67351

gcc/ChangeLog:
* fold-const.c (fold_binary_loc) : Move
Transform (x >> c) << c into x & (-1<<c) or
transform (x << c) >> c into x & ((unsigned)-1 >> c) for unsigned
types using simplify and match.
* match.pd (lshift (rshift @0 INTEGER_CST@1) @1) : New simplifier.
(rshift (lshift @0 INTEGER_CST@1) @1) : New Simplifier.

gcc/testsuite/ChangeLog:
* g++.dg/pr66752-2.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@227432 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/fold-const.c
gcc/match.pd
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/pr67351.C [new file with mode: 0644]