gcc/
- config/mips/mips.c (mips16_emit_constants): Emit `consttable' insn at the beginning of the constant pool. (mips_insert_insn_pseudos): New function. (mips_machine_reorg2): Call it.
- config/mips/mips.md (unspec): Add UNSPEC_CONSTTABLE and UNSPEC_INSN_PSEUDO enum values. (insn_pseudo, consttable): New insns.
gcc/testsuite/
- gcc.target/mips/insn-casesi.c: New test case.
- gcc.target/mips/insn-pseudo-1.c: New test case.
- gcc.target/mips/insn-pseudo-2.c: New test case.
- gcc.target/mips/insn-pseudo-3.c: New test case.
- gcc.target/mips/insn-pseudo-4.c: New test case.
- gcc.target/mips/insn-tablejump.c: New test case.
1f87aa2 MIPS/GCC: Mark trailing labels with `.insn'
gcc/ChangeLog | 10 +++
gcc/config/mips/mips.c | 43 +++++++++
gcc/config/mips/mips.md | 19 ++++
gcc/testsuite/ChangeLog | 9 ++
gcc/testsuite/gcc.target/mips/insn-casesi.c | 112 ++++++++++++++++++++++++
gcc/testsuite/gcc.target/mips/insn-pseudo-1.c | 23 +++++
gcc/testsuite/gcc.target/mips/insn-pseudo-2.c | 23 +++++
gcc/testsuite/gcc.target/mips/insn-pseudo-3.c | 23 +++++
gcc/testsuite/gcc.target/mips/insn-pseudo-4.c | 27 ++++++
gcc/testsuite/gcc.target/mips/insn-tablejump.c | 98 +++++++++++++++++++++
10 files changed, 387 insertions(+)
Upstream: gcc.gnu.org