| Index: include/opcode/sparc.h
|
| diff --git a/include/opcode/sparc.h b/include/opcode/sparc.h
|
| index b1c5e42ad104eb3b59268e9b8940bc8b8f7636c5..f05909feddc5e849f09f529b92e7932023d30116 100644
|
| --- a/include/opcode/sparc.h
|
| +++ b/include/opcode/sparc.h
|
| @@ -42,6 +42,7 @@ enum sparc_opcode_arch_val
|
| SPARC_OPCODE_ARCH_V6 = 0,
|
| SPARC_OPCODE_ARCH_V7,
|
| SPARC_OPCODE_ARCH_V8,
|
| + SPARC_OPCODE_ARCH_LEON,
|
| SPARC_OPCODE_ARCH_SPARCLET,
|
| SPARC_OPCODE_ARCH_SPARCLITE,
|
| /* V9 variants must appear last. */
|
| @@ -111,6 +112,9 @@ typedef struct sparc_opcode
|
| #define F_JSR 0x00000010 /* Subroutine call. */
|
| #define F_FLOAT 0x00000020 /* Floating point instruction (not a branch). */
|
| #define F_FBR 0x00000040 /* Floating point branch. */
|
| +#define F_PREFERRED 0x00000080 /* A preferred alias. */
|
| +
|
| +#define F_PREF_ALIAS (F_ALIAS|F_PREFERRED)
|
|
|
| /* These must match the HWCAP_* values precisely. */
|
| #define HWCAP_MUL32 0x00000001 /* umul/umulcc/smul/smulcc insns */
|
| @@ -234,6 +238,7 @@ typedef struct sparc_opcode
|
| #define OPF_LOW5(x) OPF ((x) & 0x1f) /* V9. */
|
| #define OPF_LOW4(x) OPF ((x) & 0xf) /* V9. */
|
| #define F3F(x, y, z) (OP (x) | OP3 (y) | OPF (z)) /* Format3 float insns. */
|
| +#define F3F4(x, y, z) (OP (x) | OP3 (y) | OPF_LOW4 (z))
|
| #define F3I(x) (((x) & 0x1) << 13) /* Immediate field of format 3 insns. */
|
| #define F2(x, y) (OP (x) | OP2(y)) /* Format 2 insns. */
|
| #define F3(x, y, z) (OP (x) | OP3(y) | F3I(z)) /* Format3 insns. */
|
|
|