diff options
author | Roger Sayle <roger@eyesopen.com> | 2005-05-27 02:46:01 +0000 |
---|---|---|
committer | Roger Sayle <sayle@gcc.gnu.org> | 2005-05-27 02:46:01 +0000 |
commit | 1acdf11bd5d3eb94bf6e1fdefe5d3705cd0b3741 (patch) | |
tree | 9cf44213b16d28aaf90e2b46a6d444069dfde78e /gcc/java/java-tree.h | |
parent | 2c9ed0af7e94a0ab37fbbb95bb61e7b324187b69 (diff) | |
download | gcc-1acdf11bd5d3eb94bf6e1fdefe5d3705cd0b3741.zip gcc-1acdf11bd5d3eb94bf6e1fdefe5d3705cd0b3741.tar.gz gcc-1acdf11bd5d3eb94bf6e1fdefe5d3705cd0b3741.tar.bz2 |
re PR tree-optimization/9814 (gcc fails to optimise if (l&2) l|=2 away)
PR tree-optimization/9814
* ifcvt.c (noce_emit_move_insn): If we fail to recognize the move
instruction, add the necessary clobbers by re-expanding the RTL
for arithmetic operations via optab.c's expand_unop/expand_binop.
(noce_try_bitop): New function to optimize bit manipulation idioms
of the form "if (x & C) x = x op C" and "if (!(x & C) x = x op C".
(noce_process_if_block): Call noce_try_bitop.
* gcc.dg/pr9814-1.c: New test case.
From-SVN: r100240
Diffstat (limited to 'gcc/java/java-tree.h')
0 files changed, 0 insertions, 0 deletions