OSDN Git Service

Move the support for using .init_array from ARM to the generic
authorRafael Espindola <rafael.espindola@gmail.com>
Tue, 19 Jun 2012 00:48:28 +0000 (00:48 +0000)
committerRafael Espindola <rafael.espindola@gmail.com>
Tue, 19 Jun 2012 00:48:28 +0000 (00:48 +0000)
commitd6b43a317e71246380db55a50b799b062b53cdce
treea9065fa111ae4ea7feb770a27353bf0673c985fe
parentf6fc855a00b57786a7a9132095165575a5e45312
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
include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
include/llvm/Target/TargetOptions.h
lib/CodeGen/TargetLoweringObjectFileImpl.cpp
lib/Target/ARM/ARMTargetObjectFile.cpp
lib/Target/ARM/ARMTargetObjectFile.h
lib/Target/X86/X86ISelLowering.cpp
lib/Target/X86/X86TargetObjectFile.cpp
lib/Target/X86/X86TargetObjectFile.h
test/CodeGen/X86/constructor.ll [new file with mode: 0644]
tools/llc/llc.cpp