[PATCH v3 0/9] MIPS: Add MIPS16e2 ASE instrucions.
Jie Mei
jie.mei@oss.cipunited.com
Wed May 24 09:41:10 GMT 2023
Patch V2: adds new patch.
Patch V3: `%{mmips16e2} \` puts the wrong palce in first patch,
V3 fix it.
The MIPS16e2 ASE is an enhancement to the MIPS16e ASE,
which includes all MIPS16e instructions, with some addition.
This series of patches adds all instructions from MIPS16E2 ASE
with corresponding tests.
Jie Mei (9):
MIPS: Add basic support for mips16e2
MIPS: Add MOVx instructions support for mips16e2
MIPS: Add instruction about global pointer register for mips16e2
MIPS: Add bitwise instructions for mips16e2
MIPS: Add LUI instruction for mips16e2
MIPS: Add load/store word left/right instructions for mips16e2
MIPS: Use ISA_HAS_9BIT_DISPLACEMENT for mips16e2
MIPS: Add CACHE instruction for mips16e2
MIPS: Make mips16e2 generating ZEB/ZEH instead of ANDI under certain
conditions
gcc/config/mips/constraints.md | 4 +
gcc/config/mips/mips-protos.h | 4 +
gcc/config/mips/mips.cc | 164 ++++++++++--
gcc/config/mips/mips.h | 32 ++-
gcc/config/mips/mips.md | 200 ++++++++++++---
gcc/config/mips/mips.opt | 4 +
gcc/config/mips/predicates.md | 21 +-
gcc/doc/invoke.texi | 7 +
gcc/testsuite/gcc.target/mips/mips.exp | 10 +
.../gcc.target/mips/mips16e2-cache.c | 34 +++
gcc/testsuite/gcc.target/mips/mips16e2-cmov.c | 68 +++++
gcc/testsuite/gcc.target/mips/mips16e2-gp.c | 101 ++++++++
gcc/testsuite/gcc.target/mips/mips16e2.c | 240 ++++++++++++++++++
13 files changed, 825 insertions(+), 64 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/mips/mips16e2-cache.c
create mode 100644 gcc/testsuite/gcc.target/mips/mips16e2-cmov.c
create mode 100644 gcc/testsuite/gcc.target/mips/mips16e2-gp.c
create mode 100644 gcc/testsuite/gcc.target/mips/mips16e2.c
--
2.40.1
More information about the Gcc-patches
mailing list