aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorAnton Korobeynikov <asl@math.spbu.ru>2008-04-23 18:18:10 +0000
committerAnton Korobeynikov <asl@math.spbu.ru>2008-04-23 18:18:10 +0000
commitb214a5266a857ea3899af24ed85c58532192eb1c (patch)
tree68050361025d83a89677301ad3409276b33c74dd /lib
parentb971ac18ed75deb52ff41e8eae965562196b2109 (diff)
downloadexternal_llvm-b214a5266a857ea3899af24ed85c58532192eb1c.zip
external_llvm-b214a5266a857ea3899af24ed85c58532192eb1c.tar.gz
external_llvm-b214a5266a857ea3899af24ed85c58532192eb1c.tar.bz2
Make stack alignment options global for all targets
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50157 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/TargetMachine.cpp14
-rw-r--r--lib/Target/X86/X86RegisterInfo.cpp5
-rw-r--r--lib/Target/X86/X86Subtarget.cpp5
3 files changed, 15 insertions, 9 deletions
diff --git a/lib/Target/TargetMachine.cpp b/lib/Target/TargetMachine.cpp
index c252368..4b3371d 100644
--- a/lib/Target/TargetMachine.cpp
+++ b/lib/Target/TargetMachine.cpp
@@ -36,6 +36,8 @@ namespace llvm {
CodeModel::Model CMModel;
bool PerformTailCallOpt;
bool OptimizeForSize;
+ bool RealignStack;
+ unsigned StackAlignment;
}
namespace {
cl::opt<bool, true> PrintCode("print-machineinstrs",
@@ -135,6 +137,18 @@ namespace {
cl::desc("Optimize for size."),
cl::location(OptimizeForSize),
cl::init(false));
+
+ cl::opt<bool, true>
+ EnableRealignStack("realign-stack",
+ cl::desc("Realign stack if needed"),
+ cl::location(RealignStack),
+ cl::init(true));
+
+ cl::opt<unsigned, true>
+ OverrideStackAlignment("stack-alignment",
+ cl::desc("Override default stack alignment"),
+ cl::location(StackAlignment),
+ cl::init(0));
}
//---------------------------------------------------------------------------
diff --git a/lib/Target/X86/X86RegisterInfo.cpp b/lib/Target/X86/X86RegisterInfo.cpp
index f923aef..563093b 100644
--- a/lib/Target/X86/X86RegisterInfo.cpp
+++ b/lib/Target/X86/X86RegisterInfo.cpp
@@ -29,7 +29,6 @@
#include "llvm/CodeGen/MachineLocation.h"
#include "llvm/CodeGen/MachineModuleInfo.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
-#include "llvm/Support/CommandLine.h"
#include "llvm/Target/TargetAsmInfo.h"
#include "llvm/Target/TargetFrameInfo.h"
#include "llvm/Target/TargetInstrInfo.h"
@@ -39,10 +38,6 @@
#include "llvm/ADT/STLExtras.h"
using namespace llvm;
-static cl::opt<bool>
-RealignStack("realign-stack", cl::init(true),
- cl::desc("Realign stack if needed"));
-
X86RegisterInfo::X86RegisterInfo(X86TargetMachine &tm,
const TargetInstrInfo &tii)
: X86GenRegisterInfo(X86::ADJCALLSTACKDOWN, X86::ADJCALLSTACKUP),
diff --git a/lib/Target/X86/X86Subtarget.cpp b/lib/Target/X86/X86Subtarget.cpp
index 71b5cb3..e0f350c 100644
--- a/lib/Target/X86/X86Subtarget.cpp
+++ b/lib/Target/X86/X86Subtarget.cpp
@@ -16,6 +16,7 @@
#include "llvm/Module.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Target/TargetMachine.h"
+#include "llvm/Target/TargetOptions.h"
using namespace llvm;
cl::opt<X86Subtarget::AsmWriterFlavorTy>
@@ -26,10 +27,6 @@ AsmWriterFlavor("x86-asm-syntax", cl::init(X86Subtarget::Unset),
clEnumValN(X86Subtarget::Intel, "intel", " Emit Intel-style assembly"),
clEnumValEnd));
-cl::opt<unsigned>
-StackAlignment("stack-alignment", cl::init(0),
- cl::desc("Override default stack alignment"));
-
/// True if accessing the GV requires an extra load. For Windows, dllimported
/// symbols are indirect, loading the value at address GV rather then the