diff options
author | Alex Chadwick <Alex.Chadwick@cl.cam.ac.uk> | 2018-07-24 09:21:44 +0930 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2018-07-26 17:42:47 +0930 |
commit | fa758a70467c37cfe7b261e1dc20d431be3db62e (patch) | |
tree | b2bb47d4a9ab6da95fe2d55e8b9eb4bf9e889a09 /include | |
parent | b358827438360cb5d04fbc59d594583fb506ba65 (diff) | |
download | gdb-fa758a70467c37cfe7b261e1dc20d431be3db62e.zip gdb-fa758a70467c37cfe7b261e1dc20d431be3db62e.tar.gz gdb-fa758a70467c37cfe7b261e1dc20d431be3db62e.tar.bz2 |
PowerPC Improve support for Gekko & Broadway
This is a relatively straightforward patch to improve support for the
IBM Gekko and IBM Broadway processors. Broadway is functionally
equivalent to the IBM 750CL, while Gekko's functionality is a subset
of theirs. The patch simplifies this reality and adds -mgekko and
-mbroadway as aliases for -m750cl. I didn't feel it was worth wasting
a PPC_OPCODE_* bit to differentiate Gekko. The patch adds a number of
simplified mnemonics for special purpose register access. Notably,
Broadway adds 4 additional IBAT and DBAT registers but these are not
assigned sequential SPR numbers.
gas/
* config/tc-ppc.c (md_show_usage): Add -mgekko and -mbroadway.
* doc/as.texi (Target PowerPC options): Add -mgekko and -mbroadway.
* doc/c-ppc.texi (PowerPC-Opts): Likewise.
* testsuite/gas/ppc/broadway.d,
* testsuite/gas/ppc/broadway.s: New test for broadway.
* testsuite/gas/ppc/ppc.exp: Run new test.
include/
* opcode/ppc.h (PPC_OPCODE_750): Adjust comment.
opcodes/
* ppc-dis.c (ppc_opts): Add -mgekko and -mbroadway.
(powerpc_init_dialect): Handle bfd_mach_ppc_750.
* ppc-opc.c (insert_sprbat, extract_sprbat): New functions to
support disjointed BAT.
(powerpc_operands): Allow extra bit in SPRBAT_MASK. Add SPRGQR.
(XSPRGQR_MASK, GEKKO, BROADWAY): Define.
(powerpc_opcodes): Add 750cl extended mnemonics for spr access.
Diffstat (limited to 'include')
-rw-r--r-- | include/ChangeLog | 4 | ||||
-rw-r--r-- | include/opcode/ppc.h | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog index 8558368..d39f52e 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,7 @@ +2018-07-26 Alex Chadwick <Alex.Chadwick@cl.cam.ac.uk> + + * opcode/ppc.h (PPC_OPCODE_750): Adjust comment. + 2018-07-26 Alan Modra <amodra@gmail.com> * elf/ppc64.h: Specify byte offset to local entry for values diff --git a/include/opcode/ppc.h b/include/opcode/ppc.h index 44445bc..cfabcbd 100644 --- a/include/opcode/ppc.h +++ b/include/opcode/ppc.h @@ -204,7 +204,7 @@ extern const unsigned int spe2_num_opcodes; /* Opcode is only supported by Power8 architecture. */ #define PPC_OPCODE_POWER8 0x1000000000ull -/* Opcode is supported by ppc750cl. */ +/* Opcode is supported by ppc750cl/Gekko/Broadway. */ #define PPC_OPCODE_750 0x2000000000ull /* Opcode is supported by ppc7450. */ |