diff options
author | Alan Modra <amodra@gmail.com> | 2017-03-27 08:19:48 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2017-03-27 21:49:32 +1030 |
commit | 9b7539374617a94c2d646f49e1bbfc954b11891d (patch) | |
tree | bdf1936e48eb6ea08eb1d4cf297c067f9846351e /opcodes/ppc-dis.c | |
parent | d721ba37d8995b9c11a0b8eef0f4d2dc022f85aa (diff) | |
download | gdb-9b7539374617a94c2d646f49e1bbfc954b11891d.zip gdb-9b7539374617a94c2d646f49e1bbfc954b11891d.tar.gz gdb-9b7539374617a94c2d646f49e1bbfc954b11891d.tar.bz2 |
PR21303, objdump doesn't show e200z4 insns
PR 21303
opcodes/
* ppc-dis.c (struct ppc_mopt): Comment.
(ppc_opts <e200z4>): Move PPC_OPCODE_VLE from .sticky to .cpu.
gas/
* testsuite/gas/ppc/pr21303.d,
* testsuite/gas/ppc/pr21303.s: New test
* testsuite/gas/ppc/ppc.exp: Run it.
Diffstat (limited to 'opcodes/ppc-dis.c')
-rw-r--r-- | opcodes/ppc-dis.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/opcodes/ppc-dis.c b/opcodes/ppc-dis.c index ca50689..f3db062 100644 --- a/opcodes/ppc-dis.c +++ b/opcodes/ppc-dis.c @@ -46,8 +46,19 @@ struct dis_private (((struct dis_private *) ((INFO)->private_data))->dialect) struct ppc_mopt { + /* Option string, without -m or -M prefix. */ const char *opt; + /* CPU option flags. */ ppc_cpu_t cpu; + /* Flags that should stay on, even when combined with another cpu + option. This should only be used for generic options like + "-many" or "-maltivec" where it is reasonable to add some + capability to another cpu selection. The added flags are sticky + so that, for example, "-many -me500" and "-me500 -many" result in + the same assembler or disassembler behaviour. Do not use + "sticky" for specific cpus, as this will prevent that cpu's flags + from overriding the defaults set in powerpc_init_dialect or a + prior -m option. */ ppc_cpu_t sticky; }; @@ -109,8 +120,8 @@ struct ppc_mopt ppc_opts[] = { { "e200z4", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE| PPC_OPCODE_SPE | PPC_OPCODE_ISEL | PPC_OPCODE_EFS | PPC_OPCODE_BRLOCK | PPC_OPCODE_PMR | PPC_OPCODE_CACHELCK | PPC_OPCODE_RFMCI - | PPC_OPCODE_E500 | PPC_OPCODE_E200Z4), - PPC_OPCODE_VLE }, + | PPC_OPCODE_E500 | PPC_OPCODE_VLE | PPC_OPCODE_E200Z4), + 0 }, { "e300", PPC_OPCODE_PPC | PPC_OPCODE_E300, 0 }, { "e500", (PPC_OPCODE_PPC | PPC_OPCODE_BOOKE | PPC_OPCODE_SPE |