[compiler-rt] r208560 - Define CRT_HAS_128BIT even for PPC32
Hal Finkel
hfinkel at anl.gov
Mon May 12 06:43:29 PDT 2014
Author: hfinkel
Date: Mon May 12 08:43:29 2014
New Revision: 208560
URL: http://llvm.org/viewvc/llvm-project?rev=208560&view=rev
Log:
Define CRT_HAS_128BIT even for PPC32
r201909, which introduced CRT_HAS_128BIT, unintentionally broke self-hosting on
PPC32. We used to define CRT_HAS_128BIT only on LP64 systems, but this is not
quite right (at least for Clang-compiled code). Even though __int128 is not
supported on PPC32, SROA can (and does) still form i128 variables at the IR
level, and operations on those variables may turn into the associated runtime
calls. As a result, we still need to compile __ashlti3, __ashrti3, __lshrti3,
and perhaps others, on PPC32.
Modified:
compiler-rt/trunk/lib/builtins/int_types.h
Modified: compiler-rt/trunk/lib/builtins/int_types.h
URL: http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/lib/builtins/int_types.h?rev=208560&r1=208559&r2=208560&view=diff
==============================================================================
--- compiler-rt/trunk/lib/builtins/int_types.h (original)
+++ compiler-rt/trunk/lib/builtins/int_types.h Mon May 12 08:43:29 2014
@@ -56,7 +56,7 @@ typedef union
}s;
} udwords;
-#if __LP64__
+#if __LP64__ || defined(__ppc__) || defined(__powerpc__)
#define CRT_HAS_128BIT
#endif
More information about the llvm-commits
mailing list