forked from OSchip/llvm-project
Revert "Remove some unused triple and data layout."
This reverts commit r179497 and the accompanying commit as it broke random platforms that aren't osx. llvm-svn: 179499
This commit is contained in:
parent
4eebd14ad0
commit
1f140317e3
|
@ -1,5 +1,8 @@
|
|||
; RUN: opt < %s -basicaa -slp-vectorizer -dce -S -mtriple=i386-apple-macosx10.8.0 -mcpu=corei7-avx | FileCheck %s
|
||||
|
||||
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128-n8:16:32-S128"
|
||||
target triple = "i386-apple-macosx10.8.0"
|
||||
|
||||
; int foo(double *A, int n, int m) {
|
||||
; double sum = 0, v1 = 2, v0 = 3;
|
||||
; for (int i=0; i < n; ++i)
|
||||
|
|
|
@ -1,5 +1,8 @@
|
|||
; RUN: opt < %s -basicaa -slp-vectorizer -dce -S -mtriple=i386-apple-macosx10.8.0 -mcpu=corei7-avx | FileCheck %s
|
||||
|
||||
target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128-n8:16:32-S128"
|
||||
target triple = "i386-apple-macosx10.8.0"
|
||||
|
||||
;CHECK: @foo
|
||||
;CHECK: load <2 x double>
|
||||
;CHECK: ret
|
||||
|
|
|
@ -36,7 +36,6 @@
|
|||
#include "llvm/Support/PassNameParser.h"
|
||||
#include "llvm/Support/PluginLoader.h"
|
||||
#include "llvm/Support/PrettyStackTrace.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
#include "llvm/Support/Signals.h"
|
||||
#include "llvm/Support/SourceMgr.h"
|
||||
#include "llvm/Support/SystemUtils.h"
|
||||
|
@ -530,8 +529,9 @@ static TargetMachine* GetTargetMachine(Triple TheTriple) {
|
|||
const Target *TheTarget = TargetRegistry::lookupTarget(MArch, TheTriple,
|
||||
Error);
|
||||
// Some modules don't specify a triple, and this is okay.
|
||||
if (!TheTarget)
|
||||
if (!TheTarget) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Package up features to be passed to target/subtarget
|
||||
std::string FeaturesStr;
|
||||
|
@ -598,11 +598,8 @@ int main(int argc, char **argv) {
|
|||
}
|
||||
|
||||
// If we are supposed to override the target triple, do so now.
|
||||
const DataLayout *TD;
|
||||
if (!TargetTriple.empty()) {
|
||||
if (!TargetTriple.empty())
|
||||
M->setTargetTriple(Triple::normalize(TargetTriple));
|
||||
TD = GetTargetMachine(Triple(TargetTriple))->getDataLayout();
|
||||
}
|
||||
|
||||
// Figure out what stream we are supposed to write to...
|
||||
OwningPtr<tool_output_file> Out;
|
||||
|
@ -644,16 +641,16 @@ int main(int argc, char **argv) {
|
|||
TLI->disableAllFunctions();
|
||||
Passes.add(TLI);
|
||||
|
||||
// If we don't have a data layout by now go ahead and set it if we can.
|
||||
if (!TD) {
|
||||
// Add an appropriate DataLayout instance for this module.
|
||||
DataLayout *TD = 0;
|
||||
const std::string &ModuleDataLayout = M.get()->getDataLayout();
|
||||
if (!ModuleDataLayout.empty())
|
||||
TD = new DataLayout(ModuleDataLayout);
|
||||
else if (!DefaultDataLayout.empty())
|
||||
TD = new DataLayout(DefaultDataLayout);
|
||||
}
|
||||
|
||||
if (TD)
|
||||
Passes.add(new DataLayout(*TD));
|
||||
Passes.add(TD);
|
||||
|
||||
Triple ModuleTriple(M->getTargetTriple());
|
||||
TargetMachine *Machine = 0;
|
||||
|
|
Loading…
Reference in New Issue