[llvm-commits] [llvm-gcc-4.2] r145780 - in /llvm-gcc-4.2/trunk/gcc: config/arm/arm.h config/i386/i386.h config/rs6000/rs6000.h llvm-backend.cpp
Nick Lewycky
nicholas at mxc.ca
Sat Dec 3 14:43:38 PST 2011
Author: nicholas
Date: Sat Dec 3 16:43:37 2011
New Revision: 145780
URL: http://llvm.org/viewvc/llvm-project?rev=145780&view=rev
Log:
Try to fix a couple more bits of fallout from the TargetOptions API change.
This doesn't seem to affect dragonegg.
Modified:
llvm-gcc-4.2/trunk/gcc/config/arm/arm.h
llvm-gcc-4.2/trunk/gcc/config/i386/i386.h
llvm-gcc-4.2/trunk/gcc/config/rs6000/rs6000.h
llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
Modified: llvm-gcc-4.2/trunk/gcc/config/arm/arm.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/arm/arm.h?rev=145780&r1=145779&r2=145780&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/arm/arm.h (original)
+++ llvm-gcc-4.2/trunk/gcc/config/arm/arm.h Sat Dec 3 16:43:37 2011
@@ -3569,15 +3569,17 @@
? "armv4" : ""))))))))
#define LLVM_SET_MACHINE_OPTIONS(argvec) \
- if (TARGET_SOFT_FLOAT) \
- argvec.push_back("-soft-float"); \
- if (TARGET_HARD_FLOAT_ABI) \
- argvec.push_back("-float-abi=hard"); \
if (flag_mkernel || flag_apple_kext) { \
argvec.push_back("-arm-long-calls"); \
argvec.push_back("-arm-strict-align"); \
}
+#define LLVM_SET_TARGET_OPTIONS(options) \
+ options.GenerateSoftFloatCalls = TARGET_SOFT_FLOAT; \
+ if (TARGET_HARD_FLOAT_ABI) \
+ options.FloatABIForCalls = llvm::FloatABI::Hard;
+
+
/* Doing struct copy by partial-word loads and stores is not a good idea on ARM. */
#define TARGET_LLVM_MIN_BYTES_COPY_BY_MEMCPY 4
Modified: llvm-gcc-4.2/trunk/gcc/config/i386/i386.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/i386/i386.h?rev=145780&r1=145779&r2=145780&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/i386/i386.h (original)
+++ llvm-gcc-4.2/trunk/gcc/config/i386/i386.h Sat Dec 3 16:43:37 2011
@@ -3962,14 +3962,18 @@
#define LLVM_SET_MACHINE_OPTIONS(argvec) \
do { \
+ if (ix86_force_align_arg_pointer) \
+ argvec.push_back("-force-align-stack"); \
+ } while (0)
+
+#define LLVM_SET_TARGET_OPTIONS(options) \
+ do { \
/* A value of 3 in flag_omit_frame_pointer implies \
omitting leaf frame pointers only. */ \
if (flag_omit_frame_pointer == 3) \
- argvec.push_back("--disable-non-leaf-fp-elim"); \
- \
- if (ix86_force_align_arg_pointer) \
- argvec.push_back("-force-align-stack"); \
+ options.NoFramePointerElimNonLeaf = true; \
} while (0)
+
#endif /* ENABLE_LLVM */
/* LLVM LOCAL end */
Modified: llvm-gcc-4.2/trunk/gcc/config/rs6000/rs6000.h
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/config/rs6000/rs6000.h?rev=145780&r1=145779&r2=145780&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/config/rs6000/rs6000.h (original)
+++ llvm-gcc-4.2/trunk/gcc/config/rs6000/rs6000.h Sat Dec 3 16:43:37 2011
@@ -3468,9 +3468,10 @@
F.AddFeature("64bit", TARGET_POWERPC64); \
}
-#define LLVM_SET_MACHINE_OPTIONS(argvec) \
- if (TARGET_SOFT_FLOAT) \
- argvec.push_back("-soft-float");
+#define LLVM_SET_MACHINE_OPTIONS(argvec)
+
+#define LLVM_SET_TARGET_OPTIONS(options) \
+ options.GenerateSoftFloatCalls = TARGET_SOFT_FLOAT;
/* When -m64 is specified, set the architecture to powerpc64-os-blah even if the
* compiler was configured for powerpc-os-blah.
Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=145780&r1=145779&r2=145780&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Sat Dec 3 16:43:37 2011
@@ -561,6 +561,7 @@
FeatureStr = Features.getString();
TargetOptions Options;
+ LLVM_SET_TARGET_OPTIONS(Options);
Options.UnsafeFPMath = fast_math_flags_set_p();
Options.NoInfsFPMath = !flag_honor_infinites;
Options.NoNaNsFPMath = !flag_honor_nans;
More information about the llvm-commits
mailing list