r174489 - in /trunk/gcc: ChangeLog config/i386/...
uros@gcc.gnu.org
uros@gcc.gnu.org
Tue May 31 16:14:00 GMT 2011
Author: uros
Date: Tue May 31 16:14:08 2011
New Revision: 174489
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=174489
Log:
* config/i386/i386.md (*movtf_internal): Avoid allocating general
registers. Penalize F*r->o alternative to prevent partial memory
stalls. Slightly penalize *roF->*r alternative. Generate SSE
CONST_DOUBLE immediates when optimizing function for size. Do not move
CONST_DOUBLEs directly to memory for !TARGET_MEMORY_MISMATCH_STALL.
(*movxf_internal): Slightly penalize Yx*roF->Yx*r alternative.
(*movdf_internal): Slightly penalize Yd*roF->Yd*r alternative.
(*movdf_internal_rex64): Slightly penalize rm->r, F->m and r->m
alternatives.
(*movsf_internal): Slightly penalize rmF->r and Fr->m alternatives.
(fp_register_operand splitters): Use fp_register_operand
constraint. Do not use FP_REG_P in insn condition.
(any_fp_register_operand splitters): Use any_fp_register_operand
constraint. Do not use ANY_FP_REG_P in insn condition.
* config/i386/i386.md (*pushxf_nointeger): Merge alternatives 1 and 2.
(FP push_operand splitters): Merge {TF,XF,DF}mode splitters.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.md
More information about the Gcc-cvs
mailing list