binutils-2.26

git-svn-id: svn://kolibrios.org@6324 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
Sergey Semyonov (Serge)
2016-03-12 03:07:23 +00:00
parent d818239c29
commit 3b53803119
572 changed files with 128744 additions and 64154 deletions

View File

@@ -1,5 +1,5 @@
/* s390.h -- Header file for S390 opcode table
Copyright 2000, 2001, 2003, 2010 Free Software Foundation, Inc.
Copyright (C) 2000-2015 Free Software Foundation, Inc.
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
This file is part of BFD, the Binary File Descriptor library.
@@ -41,9 +41,16 @@ enum s390_opcode_cpu_val
S390_OPCODE_Z10,
S390_OPCODE_Z196,
S390_OPCODE_ZEC12,
S390_OPCODE_Z13,
S390_OPCODE_MAXCPU
};
/* 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. */
struct s390_opcode
@@ -74,6 +81,9 @@ struct s390_opcode
/* First cpu this opcode is available for. */
enum s390_opcode_cpu_val min_cpu;
/* Instruction specific flags. */
unsigned int flags;
};
/* The table itself is sorted by major opcode number, and is otherwise
@@ -86,7 +96,7 @@ extern const int s390_num_opcodes;
extern const struct s390_opcode s390_opformats[];
extern const int s390_num_opformats;
/* Values defined for the flags field of a struct powerpc_opcode. */
/* Values defined for the flags field of a struct s390_opcode. */
/* The operands table is an array of struct s390_operand. */
@@ -103,7 +113,7 @@ struct s390_operand
};
/* Elements in the table are retrieved by indexing with values from
the operands field of the powerpc_opcodes table. */
the operands field of the s390_opcodes table. */
extern const struct s390_operand s390_operands[];
@@ -151,4 +161,14 @@ extern const struct s390_operand s390_operands[];
/* The operand needs to be a valid GP or FP register pair. */
#define S390_OPERAND_REG_PAIR 0x800
#endif /* S390_H */
/* This operand names a vector register. The disassembler uses this
to print register names with a leading 'v'. */
#define S390_OPERAND_VR 0x1000
#define S390_OPERAND_CP16 0x2000
#define S390_OPERAND_OR1 0x4000
#define S390_OPERAND_OR2 0x8000
#define S390_OPERAND_OR8 0x10000
#endif /* S390_H */