mirror of
https://github.com/RPCSX/llvm.git
synced 2024-11-24 04:09:45 +00:00
opt: Rename -default-data-layout flag to -data-layout and make it always override the layout.
There isn't much point in a flag that only works if the data layout is empty. Differential Revision: https://reviews.llvm.org/D30014 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295468 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
67d9e19554
commit
4f50278f40
@ -1,11 +1,11 @@
|
||||
; RUN: opt < %s -asan -asan-module -S \
|
||||
; RUN: -mtriple=i386-unknown-freebsd \
|
||||
; RUN: -default-data-layout="e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" | \
|
||||
; RUN: -data-layout="e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128" | \
|
||||
; RUN: FileCheck --check-prefix=CHECK-32 %s
|
||||
|
||||
; RUN: opt < %s -asan -asan-module -S \
|
||||
; RUN: -mtriple=x86_64-unknown-freebsd \
|
||||
; RUN: -default-data-layout="e-m:e-i64:64-f80:128-n8:16:32:64-S128" | \
|
||||
; RUN: -data-layout="e-m:e-i64:64-f80:128-n8:16:32:64-S128" | \
|
||||
; RUN: FileCheck --check-prefix=CHECK-64 %s
|
||||
|
||||
define i32 @read_4_bytes(i32* %a) sanitize_address {
|
||||
|
@ -8,7 +8,7 @@
|
||||
|
||||
; "TO" - Optimizations and targetdata. This tests target-dependent
|
||||
; folding in the optimizers.
|
||||
; RUN: opt -S -o - -instcombine -globalopt -default-data-layout="e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64" < %s | FileCheck --check-prefix=TO %s
|
||||
; RUN: opt -S -o - -instcombine -globalopt -data-layout="e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64" < %s | FileCheck --check-prefix=TO %s
|
||||
|
||||
; "SCEV" - ScalarEvolution with default target layout
|
||||
; RUN: opt -analyze -scalar-evolution < %s | FileCheck --check-prefix=SCEV %s
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -default-data-layout="e-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64" -instcombine -S | FileCheck %s --check-prefix=LE
|
||||
; RUN: opt < %s -default-data-layout="E-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64" -instcombine -S | FileCheck %s --check-prefix=BE
|
||||
; RUN: opt < %s -data-layout="e-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64" -instcombine -S | FileCheck %s --check-prefix=LE
|
||||
; RUN: opt < %s -data-layout="E-p:64:64:64-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64" -instcombine -S | FileCheck %s --check-prefix=BE
|
||||
|
||||
; {{ 0xDEADBEEF, 0xBA }, 0xCAFEBABE}
|
||||
@g1 = constant {{i32,i8},i32} {{i32,i8} { i32 -559038737, i8 186 }, i32 -889275714 }
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: opt < %s -default-data-layout="e-p:32:32:32-p1:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-n8:16:32" -basicaa -gvn -S -die | FileCheck %s
|
||||
; RUN: opt < %s -data-layout="e-p:32:32:32-p1:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-n8:16:32" -basicaa -gvn -S -die | FileCheck %s
|
||||
|
||||
define i8 @coerce_offset0_addrspacecast(i32 %V, i32* %P) {
|
||||
store i32 %V, i32* %P
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -default-data-layout="e-p:32:32:32-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-n8:16:32" -basicaa -gvn -S -die | FileCheck %s
|
||||
; RUN: opt < %s -default-data-layout="E-p:32:32:32-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-n32" -basicaa -gvn -S -die | FileCheck %s
|
||||
; RUN: opt < %s -data-layout="e-p:32:32:32-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-n8:16:32" -basicaa -gvn -S -die | FileCheck %s
|
||||
; RUN: opt < %s -data-layout="E-p:32:32:32-p1:16:16:16-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:64:64-n32" -basicaa -gvn -S -die | FileCheck %s
|
||||
|
||||
;; Trivial RLE test.
|
||||
define i32 @test0(i32 %V, i32* %P) {
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -indvars -S "-default-data-layout=e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" | FileCheck %s
|
||||
; RUN: opt < %s -indvars -S "-default-data-layout=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" | FileCheck %s
|
||||
; RUN: opt < %s -indvars -S "-data-layout=e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64" | FileCheck %s
|
||||
; RUN: opt < %s -indvars -S "-data-layout=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" | FileCheck %s
|
||||
;
|
||||
; PR11279: Assertion !IVLimit->getType()->isPointerTy()
|
||||
;
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -default-data-layout="e-p:32:32:32" -instcombine -S | FileCheck %s --check-prefix=LE
|
||||
; RUN: opt < %s -default-data-layout="E-p:32:32:32" -instcombine -S | FileCheck %s --check-prefix=BE
|
||||
; RUN: opt < %s -data-layout="e-p:32:32:32" -instcombine -S | FileCheck %s --check-prefix=LE
|
||||
; RUN: opt < %s -data-layout="E-p:32:32:32" -instcombine -S | FileCheck %s --check-prefix=BE
|
||||
; PR13442
|
||||
|
||||
@test = constant [4 x i32] [i32 1, i32 2, i32 3, i32 4]
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt < %s -instcombine -S -default-data-layout="E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128" | FileCheck %s -check-prefix=CHECK -check-prefix=ALL
|
||||
; RUN: opt < %s -instcombine -S -default-data-layout="E-p:32:32:32-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128" | FileCheck %s -check-prefix=P32 -check-prefix=ALL
|
||||
; RUN: opt < %s -instcombine -S -data-layout="E-p:64:64:64-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128" | FileCheck %s -check-prefix=CHECK -check-prefix=ALL
|
||||
; RUN: opt < %s -instcombine -S -data-layout="E-p:32:32:32-a0:0:8-f32:32:32-f64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-v64:64:64-v128:128:128" | FileCheck %s -check-prefix=P32 -check-prefix=ALL
|
||||
; RUN: opt < %s -instcombine -S | FileCheck %s -check-prefix=NODL -check-prefix=ALL
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; RUN: opt -instcombine -S -default-data-layout="p:32:32:32-p1:16:16:16-n8:16:32:64" < %s | FileCheck %s
|
||||
; RUN: opt -instcombine -S -data-layout="p:32:32:32-p1:16:16:16-n8:16:32:64" < %s | FileCheck %s
|
||||
|
||||
@G16 = internal constant [10 x i16] [i16 35, i16 82, i16 69, i16 81, i16 85,
|
||||
i16 73, i16 82, i16 69, i16 68, i16 0]
|
||||
|
@ -1,7 +1,7 @@
|
||||
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
||||
; Vary legal integer types in data layout.
|
||||
; RUN: opt < %s -instcombine -S -default-data-layout=n32 | FileCheck %s --check-prefix=ALL --check-prefix=CHECK32
|
||||
; RUN: opt < %s -instcombine -S -default-data-layout=n32:64 | FileCheck %s --check-prefix=ALL --check-prefix=CHECK64
|
||||
; RUN: opt < %s -instcombine -S -data-layout=n32 | FileCheck %s --check-prefix=ALL --check-prefix=CHECK32
|
||||
; RUN: opt < %s -instcombine -S -data-layout=n32:64 | FileCheck %s --check-prefix=ALL --check-prefix=CHECK64
|
||||
|
||||
; In all cases, the data-layout is irrelevant. We should shrink as much as possible in InstCombine
|
||||
; and allow the backend to expand as much as needed to ensure optimal codegen for any target.
|
||||
|
@ -1,7 +1,7 @@
|
||||
; This test makes sure that these instructions are properly constant propagated.
|
||||
|
||||
; RUN: opt < %s -default-data-layout="e-p:32:32" -sccp -S | FileCheck %s
|
||||
; RUN: opt < %s -default-data-layout="E-p:32:32" -sccp -S | FileCheck %s
|
||||
; RUN: opt < %s -data-layout="e-p:32:32" -sccp -S | FileCheck %s
|
||||
; RUN: opt < %s -data-layout="E-p:32:32" -sccp -S | FileCheck %s
|
||||
|
||||
; CHECK-NOT: load
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
; RUN: opt -S -simplifycfg < %s | FileCheck %s
|
||||
; RUN: opt -S -default-data-layout="p:32:32-p1:16:16" -simplifycfg < %s | FileCheck -check-prefix=CHECK -check-prefix=DL %s
|
||||
; RUN: opt -S -data-layout="p:32:32-p1:16:16" -simplifycfg < %s | FileCheck -check-prefix=CHECK -check-prefix=DL %s
|
||||
|
||||
declare void @foo1()
|
||||
|
||||
|
@ -201,10 +201,10 @@ static cl::opt<bool>
|
||||
PrintBreakpoints("print-breakpoints-for-testing",
|
||||
cl::desc("Print select breakpoints location for testing"));
|
||||
|
||||
static cl::opt<std::string>
|
||||
DefaultDataLayout("default-data-layout",
|
||||
cl::desc("data layout string to use if not specified by module"),
|
||||
cl::value_desc("layout-string"), cl::init(""));
|
||||
static cl::opt<std::string> ClDataLayout("data-layout",
|
||||
cl::desc("data layout string to use"),
|
||||
cl::value_desc("layout-string"),
|
||||
cl::init(""));
|
||||
|
||||
static cl::opt<bool> PreserveBitcodeUseListOrder(
|
||||
"preserve-bc-uselistorder",
|
||||
@ -448,9 +448,11 @@ int main(int argc, char **argv) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
// If we are supposed to override the target triple, do so now.
|
||||
// If we are supposed to override the target triple or data layout, do so now.
|
||||
if (!TargetTriple.empty())
|
||||
M->setTargetTriple(Triple::normalize(TargetTriple));
|
||||
if (!ClDataLayout.empty())
|
||||
M->setDataLayout(ClDataLayout);
|
||||
|
||||
// Figure out what stream we are supposed to write to...
|
||||
std::unique_ptr<tool_output_file> Out;
|
||||
@ -530,12 +532,6 @@ int main(int argc, char **argv) {
|
||||
TLII.disableAllFunctions();
|
||||
Passes.add(new TargetLibraryInfoWrapperPass(TLII));
|
||||
|
||||
// Add an appropriate DataLayout instance for this module.
|
||||
const DataLayout &DL = M->getDataLayout();
|
||||
if (DL.isDefault() && !DefaultDataLayout.empty()) {
|
||||
M->setDataLayout(DefaultDataLayout);
|
||||
}
|
||||
|
||||
// Add internal analysis passes from the target machine.
|
||||
Passes.add(createTargetTransformInfoWrapperPass(TM ? TM->getTargetIRAnalysis()
|
||||
: TargetIRAnalysis()));
|
||||
|
Loading…
Reference in New Issue
Block a user