emit-rtl.c (offset_address): Use simplify_gen_binary rather than gen_rtx_PLUS to...
authorRichard Henderson <rth@redhat.com>
Thu, 21 Feb 2002 23:06:16 +0000 (15:06 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 21 Feb 2002 23:06:16 +0000 (15:06 -0800)
commite3c8ea672563a4f8762b60f302a0a13c788405f7
treea3e850cb8cef839fc826131f523c7a39605ea9d5
parentc1a046e50ee5d3fe4b789ed2ad51c60db6687788
emit-rtl.c (offset_address): Use simplify_gen_binary rather than gen_rtx_PLUS to form the sum.

        * emit-rtl.c (offset_address): Use simplify_gen_binary rather
        than gen_rtx_PLUS to form the sum.
        * explow.c (force_reg): Rearrange to not allocate new pseudo
        when force_operand returns a register.
        * expr.c (expand_assignment): Allow offset_rtx expansion to
        return a sum.  Do not force addresses into registers.
        (expand_expr): Likewise.
        * simplify-rtx.c (simplify_gen_binary): Use simplify_plus_minus
        to canonicalize arithmetic that didn't simpify.
        (simplify_plus_minus): New argument force; update
        all callers.  Don't split CONST unless we can do something with it,
        and wouldn't lose the constness of the operands.

        * config/i386/i386.c (legitimize_pic_address): Recognize UNSPECs
        that we generated earlier.

From-SVN: r49945
gcc/ChangeLog
gcc/config/i386/i386.c
gcc/emit-rtl.c
gcc/explow.c
gcc/expr.c
gcc/simplify-rtx.c