expr.c (compress_float_constant): New.
authorRichard Henderson <rth@redhat.com>
Sun, 12 May 2002 17:09:24 +0000 (10:09 -0700)
committerRichard Henderson <rth@gcc.gnu.org>
Sun, 12 May 2002 17:09:24 +0000 (10:09 -0700)
commit51286de6508da7bd50ccbf6680a9ebb307a13beb
treee7f07bf40bf4b1b2030898085fdd52bd0243b374
parent6412341ec950b23d76e52b89f052aab8efeee039
expr.c (compress_float_constant): New.

        * expr.c (compress_float_constant): New.
        (emit_move_insn): Use it.
        (float_extend_from_mem): New.
        (init_expr_once): Initialize it.
        * real.c (exact_real_truncate): New.

        * config/i386/i386.h (CONST_COSTS): Assume CONST_DOUBLE gets
        dropped into memory; penalize for size.
        (RTX_COSTS): FLOAT_EXTEND is free.
        * config/i386/i386.md (extendsfdf2, extendsfxf2, extendsftf2,
        extenddfxf2, extenddftf2): Accept constants and drop them to memory.

From-SVN: r53401
gcc/ChangeLog
gcc/config/i386/i386.h
gcc/config/i386/i386.md
gcc/expr.c
gcc/real.c