[LLVMdev] test-suite wrongly using big-endian results
Renato Golin
renato.golin at linaro.org
Thu Feb 20 07:14:45 PST 2014
Hi Daniel,
I know you only did a small change to support big/little endian
reference outputs, but maybe you can help me.
I'm running the test-suite on AArch64 and it's correctly detecting
little-endian, even setting the ENDIAN=little on configure and
Makefiles alike, but it still generates "big-endian" from
Makefile.programs.
Here's the first lines of:
sandbox/test-...$ grep -i endian * | less
config.log:| not big endian
config.log:ac_cv_c_bigendian=no
config.log:ENDIAN='little'
config.status:s, at ENDIAN@,|#_!!_#|little,g
configure.log:checking whether byte ordering is bigendian... no
grep: External: Is a directory
Makefile.config:ENDIAN := little
=== So far, so good.
Makefile.programs: -if [ -f
"$(PROJ_SRC_DIR)/$*.reference_output.$(ENDIAN)-endian.$(REFERENCE_OUTPUT_KEY)"
]; then \
Makefile.programs: cp
$(PROJ_SRC_DIR)/$*.reference_output.$(ENDIAN)-endian.$(REFERENCE_OUTPUT_KEY)
$@; \
Makefile.programs: elif [ -f
"$(PROJ_SRC_DIR)/$*.reference_output.$(ENDIAN)-endian" ]; then \
Makefile.programs: cp
$(PROJ_SRC_DIR)/$*.reference_output.$(ENDIAN)-endian $@; \
=== This is correct, and I was assuming ENDIAN := little, as said above.
=== But then you get this on ALL tests in test.log:
test.log:if [ -f
"/home/enevill/llvm/test/test-suite/SingleSource/Regression/C++/EH/ConditionalExpr.reference_output.big-endian."
]; then \
test.log: cp
/home/enevill/llvm/test/test-suite/SingleSource/Regression/C++/EH/ConditionalExpr.reference_output.big-endian.
Output/ConditionalExpr.out-nat; \
test.log: elif [ -f
"/home/enevill/llvm/test/test-suite/SingleSource/Regression/C++/EH/ConditionalExpr.reference_output.big-endian"
]; then \
test.log: cp
/home/enevill/llvm/test/test-suite/SingleSource/Regression/C++/EH/ConditionalExpr.reference_output.big-endian
Output/ConditionalExpr.out-nat; \
Any ideas?
--renato
More information about the llvm-dev
mailing list