Skip to content

Commit 32c9cea

Browse files
committed
Add test cases
1 parent ec15717 commit 32c9cea

File tree

2 files changed

+137
-75
lines changed

2 files changed

+137
-75
lines changed
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
// REQUIRES: target=x86{{.*}}
2+
3+
// RUN: mlir-opt -llvm-target-to-data-layout -split-input-file %s | FileCheck --check-prefix=DATA-LAYOUT %s
4+
// RUN: mlir-opt -llvm-target-to-target-features -split-input-file %s | FileCheck --check-prefix=TARGET-FEATURES %s
5+
6+
// DATA-LAYOUT: module attributes
7+
// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec
8+
// DATA-LAYOUT-SAME: "dlti.endianness" = "little"
9+
// DATA-LAYOUT-SAME: llvm.target = #llvm.target<
10+
// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"
11+
// DATA-LAYOUT-SAME: chip = ""
12+
// DATA-LAYOUT-NOT: features =
13+
14+
// TARGET-FEATURES: module attributes
15+
// TARGET-FEATURES-NOT: dlti.dl_spec
16+
// TARGET-FEATURES-SAME: llvm.target = #llvm.target<
17+
// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"
18+
// TARGET-FEATURES-SAME: chip = ""
19+
// TARGET-FEATURES-SAME: features = <[
20+
// TARGET-FEATURES-SAME: +64bit
21+
// TARGET-FEATURES-NOT: +avx
22+
// TARGET-FEATURES-SAME: +sse
23+
// TARGET-FEATURES-NOT: +mmx
24+
25+
module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",
26+
chip = ""> } {
27+
}
28+
29+
// -----
30+
31+
// DATA-LAYOUT: module attributes
32+
// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec
33+
// DATA-LAYOUT-SAME: "dlti.endianness" = "little"
34+
// DATA-LAYOUT-SAME: llvm.target = #llvm.target<
35+
// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"
36+
// DATA-LAYOUT-SAME: chip = ""
37+
// DATA-LAYOUT-SAME: features = <["+mmx", "+sse"]>
38+
39+
// TARGET-FEATURES: module attributes
40+
// TARGET-FEATURES-NOT: dlti.dl_spec
41+
// TARGET-FEATURES-SAME: llvm.target = #llvm.target<
42+
// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"
43+
// TARGET-FEATURES-SAME: chip = ""
44+
// TARGET-FEATURES-SAME: features = <[
45+
// TARGET-FEATURES-SAME: +64bit
46+
// TARGET-FEATURES-NOT: +avx
47+
// TARGET-FEATURES-SAME: +mmx
48+
// TARGET-FEATURES-SAME: +sse
49+
50+
module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",
51+
chip = "",
52+
features = <["+mmx", "+sse"]>> } {
53+
}
54+
55+
// -----
56+
57+
// DATA-LAYOUT: module attributes
58+
// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec
59+
// DATA-LAYOUT-SAME: "dlti.endianness" = "little"
60+
// DATA-LAYOUT-SAME: llvm.target = #llvm.target<
61+
// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"
62+
// DATA-LAYOUT-SAME: chip = "skylake"
63+
// DATA-LAYOUT-NOT: features =
64+
65+
// TARGET-FEATURES: module attributes
66+
// TARGET-FEATURES-NOT: dlti.dl_spec
67+
// TARGET-FEATURES-SAME: llvm.target = #llvm.target<
68+
// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"
69+
// TARGET-FEATURES-SAME: chip = "skylake"
70+
// TARGET-FEATURES-SAME: features = <[
71+
// TARGET-FEATURES-SAME: +64bit
72+
// TARGET-FEATURES-SAME: +avx
73+
// TARGET-FEATURES-SAME: +avx2
74+
// TARGET-FEATURES-NOT: +avx512f
75+
// TARGET-FEATURES-SAME: +mmx
76+
// TARGET-FEATURES-SAME: +sse
77+
78+
module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",
79+
chip = "skylake"> } {
80+
}
81+
82+
// -----
83+
84+
// DATA-LAYOUT: module attributes
85+
// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec
86+
// DATA-LAYOUT-SAME: "dlti.endianness" = "little"
87+
// DATA-LAYOUT-SAME: llvm.target = #llvm.target<
88+
// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"
89+
// DATA-LAYOUT-SAME: chip = "skylake"
90+
// DATA-LAYOUT-SAME: features = <["-sse", "-avx"]>
91+
92+
// TARGET-FEATURES: module attributes
93+
// TARGET-FEATURES-NOT: dlti.dl_spec
94+
// TARGET-FEATURES-SAME: llvm.target = #llvm.target<
95+
// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"
96+
// TARGET-FEATURES-SAME: chip = "skylake"
97+
// TARGET-FEATURES-SAME: features = <[
98+
// TARGET-FEATURES-SAME: +64bit
99+
// TARGET-FEATURES-NOT: +avx
100+
// TARGET-FEATURES-NOT: +avx2
101+
// TARGET-FEATURES-SAME: +mmx
102+
// TARGET-FEATURES-NOT: +sse
103+
104+
module attributes { llvm.target = #llvm.target<triple = "x86_64-unknown-linux",
105+
chip = "skylake",
106+
features = <["-sse", "-avx"]>> } {
107+
}
108+
109+
// -----
110+
111+
// DATA-LAYOUT: module attributes
112+
// DATA-LAYOUT-SAME: dlti.dl_spec = #dlti.dl_spec
113+
// DATA-LAYOUT-SAME: "dlti.endianness" = "little"
114+
// DATA-LAYOUT-SAME: index = 32
115+
// DATA-LAYOUT-SAME: llvm.target = #llvm.target<
116+
// DATA-LAYOUT-SAME: triple = "x86_64-unknown-linux"
117+
// DATA-LAYOUT-SAME: chip = "skylake"
118+
// DATA-LAYOUT-SAME: features = <["-mmx", "+avx512f"]>
119+
120+
// TARGET-FEATURES: module attributes
121+
// TARGET-FEATURES-SAME: #dlti.dl_spec<index = 32 : i64>
122+
// TARGET-FEATURES-SAME: llvm.target = #llvm.target<
123+
// TARGET-FEATURES-SAME: triple = "x86_64-unknown-linux"
124+
// TARGET-FEATURES-SAME: chip = "skylake"
125+
// TARGET-FEATURES-SAME: features = <[
126+
// TARGET-FEATURES-SAME: +64bit
127+
// TARGET-FEATURES-SAME: +avx
128+
// TARGET-FEATURES-SAME: +avx2
129+
// TARGET-FEATURES-SAME: +avx512f
130+
// TARGET-FEATURES-NOT: +mmx
131+
// TARGET-FEATURES-SAME: +sse
132+
133+
module attributes { dlti.dl_spec = #dlti.dl_spec<index = 32>,
134+
llvm.target = #llvm.target<triple = "x86_64-unknown-linux",
135+
chip = "skylake",
136+
features = <["-mmx", "+avx512f"]>> } {
137+
}

mlir/test/Target/LLVMIR/target-to-data-layout.mlir

Lines changed: 0 additions & 75 deletions
This file was deleted.

0 commit comments

Comments
 (0)