diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2012-06-19 00:48:28 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2012-06-19 00:48:28 +0000 |
commit | ca3e0ee8b3843c1c558e3ae824570d1b623fda9d (patch) | |
tree | e3ab9fc8ddeb64b71d16ec1d3ba1e0315699bd41 /llvm/lib/Target/X86/X86ISelLowering.cpp | |
parent | 9ea8f7e6c53fa6b6fbfab811578ec0e16153707f (diff) | |
download | bcm5719-llvm-ca3e0ee8b3843c1c558e3ae824570d1b623fda9d.tar.gz bcm5719-llvm-ca3e0ee8b3843c1c558e3ae824570d1b623fda9d.zip |
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.
llvm-svn: 158692
Diffstat (limited to 'llvm/lib/Target/X86/X86ISelLowering.cpp')
-rw-r--r-- | llvm/lib/Target/X86/X86ISelLowering.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86ISelLowering.cpp b/llvm/lib/Target/X86/X86ISelLowering.cpp index 74902c69cad..dec8d07d99f 100644 --- a/llvm/lib/Target/X86/X86ISelLowering.cpp +++ b/llvm/lib/Target/X86/X86ISelLowering.cpp @@ -140,6 +140,8 @@ static TargetLoweringObjectFile *createTLOF(X86TargetMachine &TM) { return new TargetLoweringObjectFileMachO(); } + if (Subtarget->isTargetLinux()) + return new X86LinuxTargetObjectFile(); if (Subtarget->isTargetELF()) return new TargetLoweringObjectFileELF(); if (Subtarget->isTargetCOFF() && !Subtarget->isTargetEnvMacho()) |