diff options
author | Richard Sandiford <richard@codesourcery.com> | 2007-08-31 14:10:35 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2007-08-31 14:10:35 +0000 |
commit | 62442ab9cb306b379718f9ed797b7c60c40df6c8 (patch) | |
tree | a3e7dbffe10f5bc993fb2609c29c08b9d3f44fbe /libjava/classpath/lib/java/util/Collections$5.class | |
parent | 36ae8a61ad8812fa1c177213a44b182e156f717a (diff) | |
download | gcc-62442ab9cb306b379718f9ed797b7c60c40df6c8.zip gcc-62442ab9cb306b379718f9ed797b7c60c40df6c8.tar.gz gcc-62442ab9cb306b379718f9ed797b7c60c40df6c8.tar.bz2 |
optabs.c (shift_optab_p, [...]): New functions, split out from expand_binop.
gcc/
* optabs.c (shift_optab_p, commutative_optab_p): New functions,
split out from expand_binop.
(avoid_expensive_constant): New function.
(expand_binop_directly): Remove commutative_op argument and
call cummutative_optab_p instead. Do not change op0 or op1
when swapping xop0 and xop1. Apply avoid_expensive_constant
to each argument after potential swapping. Enforce the
canonical order of commutative operands.
(expand_binop): Use shift_optab_p and commutative_optab_p.
Update the calls to expand_binop_directly. Only force constants
into registers when widening an operation. Only swap operands
once a direct expansion has been rejected.
(expand_twoval_binop): Only force constants into registers when
using a direct expansion.
From-SVN: r127991
Diffstat (limited to 'libjava/classpath/lib/java/util/Collections$5.class')
0 files changed, 0 insertions, 0 deletions