Add -march=iamcu to optimize for IA MCU
authorH.J. Lu <hjl@gcc.gnu.org>
Mon, 6 Jul 2015 15:17:44 +0000 (08:17 -0700)
committerH.J. Lu <hjl@gcc.gnu.org>
Mon, 6 Jul 2015 15:17:44 +0000 (08:17 -0700)
commit385e3f0c2b92341efb1654e14968a9996f4e9720
tree857760d49dee456ae368123c838e2c1a7137f139
parent1a02f6c118f7e572208ef717f785d78e112f7f6b
Add -march=iamcu to optimize for IA MCU

IA MCU is based on Intel Pentium ISA without x87 and passing parameters
in registers.  We want to optimize for IA MCU without changing existing
Pentium codegen.  This patch adds PROCESSOR_IAMCU for -march=iamcu,
which is based on -march=pentium with updated cost tables.

gcc/

PR target/66749
* config/i386/i386.c (iamcu_cost): New.
(m_IAMCU): Likewise.
(initial_ix86_arch_features): Disable X86_ARCH_CMOV for m_IAMCU.
(processor_target_table): Add an entry for "iamcu".
(processor_alias_table): Likewise.
(ix86_issue_rate): Handle PROCESSOR_IAMCU.
(ix86_adjust_cost): Likewise.
(ia32_multipass_dfa_lookahead): Likewise.
* config/i386/i386.h (processor_type): Add PROCESSOR_IAMCU.
* config/i386/x86-tune.def: Updated for m_IAMCU.

gcc/testsuite/

PR target/66749
* gcc.target/i386/pr66749.c: New test.

From-SVN: r225460
gcc/config/i386/i386.c
gcc/config/i386/i386.h
gcc/config/i386/x86-tune.def
gcc/testsuite/gcc.target/i386/pr66749.c [new file with mode: 0644]