mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-24 22:24:54 +00:00
Move the support for using .init_array from ARM to the generic
TargetLoweringObjectFileELF. Use this to support it on X86. Unlike ARM, on X86 it is not easy to find out if .init_array should be used or not, so the decision is made via TargetOptions and defaults to off. Add a command line option to llc that enables it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158692 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -43,7 +43,7 @@ namespace llvm {
|
||||
StackAlignmentOverride(0), RealignStack(true),
|
||||
DisableJumpTables(false), EnableFastISel(false),
|
||||
PositionIndependentExecutable(false), EnableSegmentedStacks(false),
|
||||
TrapFuncName(""), FloatABIType(FloatABI::Default)
|
||||
UseInitArray(false), TrapFuncName(""), FloatABIType(FloatABI::Default)
|
||||
{}
|
||||
|
||||
/// PrintMachineCode - This flag is enabled when the -print-machineinstrs
|
||||
@@ -172,6 +172,10 @@ namespace llvm {
|
||||
|
||||
unsigned EnableSegmentedStacks : 1;
|
||||
|
||||
/// UseInitArray - Use .init_array instead of .ctors for static
|
||||
/// constructors.
|
||||
unsigned UseInitArray : 1;
|
||||
|
||||
/// getTrapFunctionName - If this returns a non-empty string, this means
|
||||
/// isel should lower Intrinsic::trap to a call to the specified function
|
||||
/// name instead of an ISD::TRAP node.
|
||||
|
Reference in New Issue
Block a user