aboutsummaryrefslogtreecommitdiff
path: root/gcc/objc/objc-lang.c
diff options
context:
space:
mode:
authorRoger Sayle <roger@eyesopen.com>2004-07-05 16:44:17 +0000
committerRoger Sayle <sayle@gcc.gnu.org>2004-07-05 16:44:17 +0000
commitab0e8f666d04db063342c726ea95a91401ec7545 (patch)
tree8295df6654e3966bffcbd5af16d6026cf42c98c7 /gcc/objc/objc-lang.c
parent48eb4e53cdecda5736763287719b422e58c1058f (diff)
downloadgcc-ab0e8f666d04db063342c726ea95a91401ec7545.zip
gcc-ab0e8f666d04db063342c726ea95a91401ec7545.tar.gz
gcc-ab0e8f666d04db063342c726ea95a91401ec7545.tar.bz2
fold-const.c (fold): Optimize unsigned modulus by a power of two into a bit-wise AND, i.e.
* fold-const.c (fold) <TRUNC_MOD_EXPR>: Optimize unsigned modulus by a power of two into a bit-wise AND, i.e. "X % C" as "X & (C-1)". Normalize "X % C" as "X % -C" for signed modulus and negative C. Optimize "X % -Y" as "X % Y" for signed modulus. <EQ_EXPR>: Recursively call "fold" when transforming "(X % Y) == 0" into "((unsigned) X % Y) == 0". From-SVN: r84122
Diffstat (limited to 'gcc/objc/objc-lang.c')
0 files changed, 0 insertions, 0 deletions