]> git.ipfire.org Git - thirdparty/gcc.git/commit
i386.md (*add<mode>_1): Split insn to lea.
authorUros Bizjak <uros@gcc.gnu.org>
Wed, 18 Aug 2010 19:24:41 +0000 (21:24 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Wed, 18 Aug 2010 19:24:41 +0000 (21:24 +0200)
commit21667997d04bcb29297deba5da41c9b446cd6a1c
treebcc7a37aa06b87ee0a07f8e664cfecc06f26434f
parent9a18b99ba9d3dbae4af239450459d358fade312b
i386.md (*add<mode>_1): Split insn to lea.

* 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.

From-SVN: r163351
gcc/ChangeLog
gcc/config/i386/i386-protos.h
gcc/config/i386/i386.c
gcc/config/i386/i386.md