[cfe-dev] clang/Darwin/x86-64 status on the LLVM test & gcc "compat" test suites
Jean-Daniel Dupas
devlists at shadowlab.org
Tue Feb 10 00:48:16 PST 2009
I think I know one additional error.
The CFString struct is not the same on 64 bits runtime, and so, the
Constant CFString generation does not works properly on darwin x64.
It would also affect constant NSString generation if 64bits objc
codegen was working.
Le 10 févr. 09 à 00:56, Daniel Dunbar a écrit :
> 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
> _______________________________________________
> cfe-dev mailing list
> cfe-dev at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
>
More information about the cfe-dev
mailing list