sparc EF_* flags...
David Miller
davem@davemloft.net
Tue Apr 15 23:31:00 GMT 2008
From: Ian Lance Taylor <iant@google.com>
Date: Tue, 15 Apr 2008 07:04:43 -0700
> Since all the ef_flags are machine specific, I think it makes sense to
> put them in sparc.h.
Ok to commit?
elfcpp/
2008-04-15 David S. Miller <davem@davemloft.net>
* sparc.h (EF_SPARC_EXT_MASK, EF_SPARC_32PLUS_MASK,
EF_SPARC_32PLUS, EF_SPARC_SUN_US1, EF_SPARC_HAL_R1,
EF_SPARC_SUN_US3, EF_SPARC_LEDATA, EF_SPARCV9_MM,
EF_SPARCV9_TSO, EF_SPARCV9_PSO, EF_SPARCV9_RMO):
Define as enum constants.
Index: sparc.h
===================================================================
RCS file: /cvs/src/src/elfcpp/sparc.h,v
retrieving revision 1.1
diff -u -p -r1.1 sparc.h
--- sparc.h 11 Apr 2008 19:13:08 -0000 1.1
+++ sparc.h 15 Apr 2008 23:28:38 -0000
@@ -148,6 +148,22 @@ enum
R_SPARC_REV32 = 252,
};
+// e_flags values defined for sparc
+enum
+{
+ EF_SPARC_EXT_MASK = 0xffff00, // reserved for vendor extensions
+ EF_SPARC_32PLUS_MASK = 0xffff00, // bits indicating V8+ type
+ EF_SPARC_32PLUS = 0x000100, // generic V8+ features
+ EF_SPARC_SUN_US1 = 0x000200, // Sun UltraSPARC-I extensions
+ EF_SPARC_HAL_R1 = 0x000400, // HAL R1 extensions
+ EF_SPARC_SUN_US3 = 0x000800, // Sun UltraSPARC-III extensions
+ EF_SPARC_LEDATA = 0x800000, // little endian data
+ EF_SPARCV9_MM = 0x3, // memory model mask
+ EF_SPARCV9_TSO = 0x0, // total store ordering
+ EF_SPARCV9_PSO = 0x1, // partial store ordering
+ EF_SPARCV9_RMO = 0x2, // relaxed store ordering
+};
+
} // End namespace elfcpp.
#endif // !defined(ELFCPP_SPARC_H)
More information about the Binutils
mailing list