aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorSegher Boessenkool <segher@kernel.crashing.org>2017-10-03 18:02:38 +0200
committerSegher Boessenkool <segher@gcc.gnu.org>2017-10-03 18:02:38 +0200
commita8ccdfa8ea6fbdc78bdd5617427d7ba945cc83af (patch)
tree50f8effb7cc092e35fba1cd02ad40548cf55e31b /gcc/fold-const.c
parent9c53f040cb3c3bc0b86f702af5bd73d904d6cf0f (diff)
downloadgcc-a8ccdfa8ea6fbdc78bdd5617427d7ba945cc83af.zip
gcc-a8ccdfa8ea6fbdc78bdd5617427d7ba945cc83af.tar.gz
gcc-a8ccdfa8ea6fbdc78bdd5617427d7ba945cc83af.tar.bz2
simplify-rtx: Remove non-simplifying simplification (PR77729)
If we have (X&C1)|C2 simplify_binary_operation_1 makes C1 as small as possible. This makes worse code in common cases like when the AND with C1 is from a zero-extension. This patch fixes it by removing this transformation (twice). PR rtl-optimization/77729 * simplify-rtx.c (simplify_binary_operation_1): Delete the (X&C1)|C2 to (X&(C1&~C2))|C2 transformations. From-SVN: r253384
Diffstat (limited to 'gcc/fold-const.c')
0 files changed, 0 insertions, 0 deletions