[cfe-dev] clang/Darwin/x86-64 status on the LLVM test & gcc "compat" test suites

Daniel Dunbar daniel at zuster.org
Mon Feb 9 15:56:25 PST 2009


Hi all,

Continuing with the current compiler test results, here is the status
of clang/Darwin/x86-64 on the LLVM test suite:

22 failures on top of the x86-32 failures I already reported on.

Presumed miscompilations (a number of these are likely attributable to
the same root cause):
--
MultiSource/Applications/ClamAV/clamscan
SingleSource/UnitTests/2003-05-31-CastToBool
  Known x86_64 ABI bug w/ bool I believe, I will be fixing today.
MultiSource/Applications/sgefa/sgefa
  PR3524: clang/x86_64 miscompiles MultiSource/Applications/sgefa/sgefa
MultiSource/Benchmarks/McCat/09-vor/vor
  PR3523: clang/x86_64 miscompiles MultiSource/Benchmarks/McCat/09-vor/vor
MultiSource/Benchmarks/MiBench/network-dijkstra/network-dijkstra
  PR3525: clang/x86_64 miscompiles
MultiSource/Benchmarks/MiBench/network-dijkstra/network-dijkstra
MultiSource/Benchmarks/MiBench/telecomm-adpcm/telecomm-adpcm
  PR3526: clang/x86_64 miscompiles
MultiSource/Benchmarks/MiBench/telecomm-adpcm/telecomm-adpcm
MultiSource/Benchmarks/Prolangs-C/fixoutput/fixoutput
  PR3527: clang/x86_64 has no builtin versions of libcalls
MultiSource/Benchmarks/SciMark2-C/scimark2
  PR3528: clang/x86_64 miscompiles MultiSource/Benchmarks/SciMark2-C/scimark2
MultiSource/Benchmarks/mediabench/adpcm/rawcaudio/rawcaudio
MultiSource/Benchmarks/mediabench/adpcm/rawdaudio/rawdaudio
  PR3529: clang/x86_64 miscompiles
MultiSource/Benchmarks/mediabench/adpcm/rawcaudio/rawcaudio
  (assuming these are the same bug)
SingleSource/Benchmarks/McGill/exptree
  PR3530: clang/x86_64 miscompiles SingleSource/Benchmarks/McGill/exptree
SingleSource/Benchmarks/Misc/himenobmtxpa
  PR3531: clang/x86_64 miscompiles SingleSource/Benchmarks/Misc/himenobmtxpa

Other:
--
MultiSource/Applications/lua/lua
MultiSource/Applications/siod/siod
MultiSource/Applications/sqlite3/sqlite3
SingleSource/Regression/C/PR640
SingleSource/UnitTests/2003-05-07-VarArgs
SingleSource/UnitTests/2003-07-09-SignedArgs
SingleSource/UnitTests/2003-08-11-VaListArg
SingleSource/UnitTests/2007-03-02-VaCopy
  x86_64 vararg support

SingleSource/UnitTests/ObjC/print-class-info
  no 64-bit Obj-C runtime support.
MultiSource/Benchmarks/MallocBench/gs/gs
  both llc/gcc versions segfault; possibly not 64-bit clean?
--

As an added bonus, here is the combined status of clang/Darwin/x86-32
and x86-64 on the gcc "compat" test suite:
--
Running /Users/ddunbar/private/gcc-4_2-SL/gcc/testsuite/gcc.dg/compat/compat.exp
...
FAIL: gcc.dg/compat/fnptr-by-value-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-by-value-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-by-value-3 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-by-value-3 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/scalar-by-value-5 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-by-value-5 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/scalar-by-value-6 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-by-value-6 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/scalar-return-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-return-3 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-return-3 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/scalar-return-3 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-align-1 c_compat_x_tst.o-c_compat_y_alt.o
execute "-m64 -m64",""
FAIL: gcc.dg/compat/struct-align-1 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m64 -m64",""
FAIL: gcc.dg/compat/struct-align-1 c_compat_x_tst.o-c_compat_y_alt.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-align-1 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-align-2 c_compat_x_tst.o-c_compat_y_alt.o
execute "-m64 -m64",""
FAIL: gcc.dg/compat/struct-align-2 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m64 -m64",""
FAIL: gcc.dg/compat/struct-align-2 c_compat_x_tst.o-c_compat_y_alt.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-align-2 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-10 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-11 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-11
c_compat_x_tst.o-c_compat_y_alt.o execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-11
c_compat_x_alt.o-c_compat_y_alt.o execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-12 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-13 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-14 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-15 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-16 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-17 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-18 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-19 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-1 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-1 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-1 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-20 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-21 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-22 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-22 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-22 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-22 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-2 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-2 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-2 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-2 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-3 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-4 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-4 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-4 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-4 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-5a c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-5b c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-6a c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-6b c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-7a c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-7b c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-8 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-8 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-8 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-8 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-9 c_compat_x_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-9 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-by-value-9 c_compat_x_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-by-value-9 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-layout-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-layout-1 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m64 -m64",""
FAIL: gcc.dg/compat/struct-layout-1 c_compat_x_tst.o-c_compat_y_alt.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-layout-1 c_compat_x_alt.o-c_compat_y_tst.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-layout-1 c_compat_x_alt.o-c_compat_y_alt.o
execute "-m32","-m32"
FAIL: gcc.dg/compat/struct-return-10 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-return-19 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-return-20 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-return-21 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-return-2 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/struct-return-2 c_compat_y_alt.o compile, "-m32","-m32"
FAIL: gcc.dg/compat/struct-return-3 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/union-by-value-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/union-return-1 c_compat_y_alt.o compile, "-m64 -m64",""
FAIL: gcc.dg/compat/vector-1 c_compat_x_tst.o-c_compat_y_alt.o execute
"-m64 -m64",""
FAIL: gcc.dg/compat/vector-1 c_compat_x_alt.o-c_compat_y_tst.o execute
"-m64 -m64",""
FAIL: gcc.dg/compat/vector-1 c_compat_x_tst.o-c_compat_y_alt.o execute
"-m32","-m32"
FAIL: gcc.dg/compat/vector-1 c_compat_x_alt.o-c_compat_y_tst.o execute
"-m32","-m32"
FAIL: gcc.dg/compat/vector-2 c_compat_x_tst.o-c_compat_y_alt.o execute
"-m64 -m64",""
FAIL: gcc.dg/compat/vector-2 c_compat_x_alt.o-c_compat_y_tst.o execute
"-m64 -m64",""
FAIL: gcc.dg/compat/vector-2 c_compat_x_tst.o-c_compat_y_alt.o execute
"-m32","-m32"
FAIL: gcc.dg/compat/vector-2 c_compat_x_alt.o-c_compat_y_tst.o execute
"-m32","-m32"

		=== gcc Summary ===

# of expected passes		1031
# of unexpected failures	87
# of unresolved testcases	234
# of unsupported tests		2
/usr/bin/gcc  version 4.2.1 (Apple Inc. build 5634)
--

The compilation failures are largely lack of support for x86-64
varargs and some complex handling; although there are some bugs
sprinkled in naturally. I have not analyzed the execute failures yet.

 - Daniel



More information about the cfe-dev mailing list