I've added clang as an alternative compiler for the nightly GMP builds. The results are not encouraging, we're triggering many problems.
For some reason, clang purports to be gcc. This makes GMP and other packages expect it to work as GCC. Unfortunately, it does not. I've accomodated the simple problems with GMP checkins the last week, hoping not to break things for (current or past) gcc. There are at least 4 problems still remaining. 1. The default ABI and ISA for a MIPS64 r1 system is MIPS32 r2 code. It is strange to generate 32-bit code by default for a 64-bit system, but even worse to generate code which will not run. This affects the various gen-*.c programs expected to run on the host during compilation. They don't, and we have no mechanism for tweaking this as we expect "gcc hello.c; ./a.out" to just work. 2. A likely miscompilation on powerpc64. The symptom is /home/tege/prec/gmp-snap/tests/mpn/t-div.c:486: GNU MP assertion failed: qp[nn - 1] == qran1 FAIL: t-div We have not isolated this yet. Help is welcome. Failure log: https://gmplib.org/devel/testmachines/check/failure/power7.gmplib.org-stat-clang-clang++:mode64.txt 3. Link errors on some arm32 systems. We have not investigates this. Help is welcome. Failure log: https://gmplib.org/devel/testmachines/build/failure/armv5.gmplib.org-stat-clang-clang++:standard.txt 4. Lots and lots of failures for some arm32 systems. The problem is related to seeding in the test harness. Possibly this is related to floating point operations and parameter passing. Failure log: https://gmplib.org/devel/testmachines/check/failure/panda.gmplib.org-stat-clang-clang++:standard.txt This is all clang 3.5. With clang 3.4, miscompilation seems to be the norm. -- Torbjörn Please encrypt, key id 0xC8601622 _______________________________________________ gmp-devel mailing list gmp-devel@gmplib.org https://gmplib.org/mailman/listinfo/gmp-devel