1 |
/* s390.h -- Header file for S390 opcode table |
/* s390.h -- Header file for S390 opcode table |
2 |
Copyright 2000, 2001 Free Software Foundation, Inc. |
Copyright 2000, 2001, 2003 Free Software Foundation, Inc. |
3 |
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). |
Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com). |
4 |
|
|
5 |
This file is part of BFD, the Binary File Descriptor library. |
This file is part of BFD, the Binary File Descriptor library. |
24 |
|
|
25 |
/* List of instruction sets variations. */ |
/* List of instruction sets variations. */ |
26 |
|
|
27 |
enum s390_opcode_arch_val |
enum s390_opcode_mode_val |
28 |
{ |
{ |
29 |
S390_OPCODE_ESA = 0, |
S390_OPCODE_ESA = 0, |
30 |
S390_OPCODE_ESAME |
S390_OPCODE_ZARCH |
31 |
|
}; |
32 |
|
|
33 |
|
enum s390_opcode_cpu_val |
34 |
|
{ |
35 |
|
S390_OPCODE_G5 = 0, |
36 |
|
S390_OPCODE_G6, |
37 |
|
S390_OPCODE_Z900, |
38 |
|
S390_OPCODE_Z990 |
39 |
}; |
}; |
40 |
|
|
41 |
/* The opcode table is an array of struct s390_opcode. */ |
/* The opcode table is an array of struct s390_opcode. */ |
63 |
appear in assembly code, and are terminated by a zero. */ |
appear in assembly code, and are terminated by a zero. */ |
64 |
unsigned char operands[6]; |
unsigned char operands[6]; |
65 |
|
|
66 |
/* Bitmask of architectures this opcode is available for. */ |
/* Bitmask of execution modes this opcode is available for. */ |
67 |
unsigned int architecture; |
unsigned int modes; |
68 |
|
|
69 |
|
/* First cpu this opcode is available for. */ |
70 |
|
enum s390_opcode_cpu_val min_cpu; |
71 |
}; |
}; |
72 |
|
|
73 |
/* The table itself is sorted by major opcode number, and is otherwise |
/* The table itself is sorted by major opcode number, and is otherwise |