* config/i386/i386.md (*add<mode>_1) <TYPE_LEA>: Split insn to lea.
commit6f843f0d43a1ce22f7f53cb6b607f2bafb28032b
authoruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 18 Aug 2010 19:24:41 +0000 (18 19:24 +0000)
committeruros <uros@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 18 Aug 2010 19:24:41 +0000 (18 19:24 +0000)
treebcc7a37aa06b87ee0a07f8e664cfecc06f26434f
parent8a1f3aac67ac00e3304a8da687ac2afa7f8c8a35
* config/i386/i386.md (*add<mode>_1) <TYPE_LEA>: Split insn to lea.
<default>:  Swap operands 1 and 2 for alternative 2 to use existing
code to output insn mnemonic.  Fix comment.
(*addsi_1_zext): Add r-r-0 alternative 1.
<TYPE_LEA>: Split insn to lea.
<default>: Handle alternative 1.
(*addhi_1_lea): Add r-r-0 alternative 2.  Use cond RTX instead of
multi-level if_then_else RTX to set "type" attribute.
<default>: Handle alternative 2.
(*addqi_1_lea): Add q-q-0 alternative 2 and r-r-0 alternative 4.
Use cond RTX instead of multi-level if_then_else RTX to set
"type" attribute.
<default>: Handle alternatives 2 and 4.
(lea splitters): Update calls to ix86_lea_for_add_ok.

* config/i386/i386.c (ix86_lea_for_add_ok): Remove unused "code"
argument.
* config/i386/i386-protos.h (ix86_lea_for_add_ok): Update prototype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163351 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/i386/i386-protos.h
gcc/config/i386/i386.c
gcc/config/i386/i386.md