The __BYTE_ORDER__ predefined macro was added in GCC 4.6: http://gcc.gnu.org/onlinedocs/gcc-4.6.0/cpp/Common-Predefined-Macros.html
There's a similar macro, __FLOAT_WORD_ORDER__, but it looks like it mainly exist to accommodate fairly obscure architectures and ARM's old FPA instructions, so it doesn't seem worth bothering with. (Not sure if the TCE pseudo-architecture is actually supposed to be big-endian or not, but that's how it comes out right now. None of the targets in Targets.cpp seem to ever say "BigEndian = true;" -- is it default-initialized to true somewhere else?) While adding the preprocessor tests for it I noticed some oversights that the other three patches fix: - add NVPTX and NVPTX64 predefined macro tests - add tests for __OPTIMIZE_SIZE__, which uncovered an overflow bug with -Oz - add more positive tests for _LP64 and __LP64__ that should have existed on e.g. mips64, as well as negative tests to all the other, 32-bit architectures. Okay to commit?
0001-test-Preprocessor-add-NVPTX-predefine-tests.patch
Description: Binary data
0002-Preprocessor-add-__BYTE_ORDER__-predefined-macro.patch
Description: Binary data
0003-test-Preprocessor-test-__OPTIMIZE_SIZE__-and-__NO_IN.patch
Description: Binary data
0004-Frontend-define-_LP64-in-a-target-independent-way.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
