summaryrefslogtreecommitdiff
path: root/include/opcode/s390.h
diff options
context:
space:
mode:
authorDominik Vogt <vogt@linux.vnet.ibm.com>2015-09-29 13:22:07 +0100
committerNick Clifton <nickc@redhat.com>2015-09-29 13:22:07 +0100
commit7ecc513a44095d614f10e89c67d9be5826abacf9 (patch)
tree150a49774f29ce8a95989942d9780c3edc10bf17 /include/opcode/s390.h
parent56e6cf80bd4be6dc95ed9b84b633e3c11ae8c86b (diff)
downloadbinutils-gdb-7ecc513a44095d614f10e89c67d9be5826abacf9.tar.gz
Add support for extensions in the .machine pseudoop on S/390, e.g. ".machine zEC12+nohtm+vx"
gas * doc/c-s390.texi: Add documentation. Add missing code markup. * config/tc-s390.c (current_flags): New static variable. (s390_parse_cpu): Parse cpu flags a la "+nohtm" etc. (s390_setup_opcodes): Use cpu flags to determine the set of opcodes. Fix indentation. (md_parse_option): Call s390_parse_cpu with the new signature. (s390_machine): Likewise. Keep track of current_flags. Simplify code a bit. undefine MAX_HISTORY at end of function. (s390_machinemode): undefine MAX_HISTORY at end of function. Update an error message. tests * gas/s390/s390.exp: Add new tests. * gas/s390/machine-parsing-1.s: New test file. * gas/s390/machine-parsing-1.l: Likewise. * gas/s390/machine-parsing-2.s: Likewise. * gas/s390/machine-parsing-2.l: Likewise. * gas/s390/machine-parsing-3.s: Likewise. * gas/s390/machine-parsing-3.l: Likewise. * gas/s390/machine-parsing-4.s: Likewise. * gas/s390/machine-parsing-4.l: Likewise. * gas/s390/machine-parsing-5.s: Likewise. * gas/s390/machine-parsing-5.l: Likewise. * gas/s390/machine-parsing-6.s: Likewise. * gas/s390/machine-parsing-6.l: Likewise. opcode * s390.h (S390_INSTR_FLAG_HTM): New flag. (S390_INSTR_FLAG_VX): New flag. (S390_INSTR_FLAG_FACILITY_MASK): New flag mask. opcodes * s390-mkopc.c (main): Parse htm and vx flag. * s390-opc.txt: Mark instructions from the hardware transactional memory and vector facilities with the "htm"/"vx" flag.
Diffstat (limited to 'include/opcode/s390.h')
-rw-r--r--include/opcode/s390.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/include/opcode/s390.h b/include/opcode/s390.h
index b47709c29a0..63797d8c133 100644
--- a/include/opcode/s390.h
+++ b/include/opcode/s390.h
@@ -47,6 +47,9 @@ enum s390_opcode_cpu_val
/* Instruction specific flags. */
#define S390_INSTR_FLAG_OPTPARM 0x1
+#define S390_INSTR_FLAG_HTM 0x2
+#define S390_INSTR_FLAG_VX 0x4
+#define S390_INSTR_FLAG_FACILITY_MASK 0x6
/* The opcode table is an array of struct s390_opcode. */