Skip to content

Commit e2cf06b

Browse files
fix a test, edit a comment
1 parent 2764a43 commit e2cf06b

File tree

2 files changed

+22
-68
lines changed

2 files changed

+22
-68
lines changed

llvm/lib/Target/SPIRV/SPIRVAsmPrinter.cpp

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -111,9 +111,8 @@ void SPIRVAsmPrinter::emitEndOfAsmFile(Module &M) {
111111
uint32_t DecSPIRVVersion = ST->getSPIRVVersion();
112112
uint32_t Major = DecSPIRVVersion / 10;
113113
uint32_t Minor = DecSPIRVVersion - Major * 10;
114-
// TODO: calculate Bound more carefully from maximum used register number,
115-
// accounting for generated OpLabels and other related instructions if
116-
// needed.
114+
// Bound is an approximation that accounts for the maximum used register
115+
// number and number of generated OpLabels
117116
unsigned Bound = 2 * (ST->getBound() + 1) + NLabels;
118117
bool FlagToRestore = OutStreamer->getUseAssemblerInfoForParsing();
119118
OutStreamer->setUseAssemblerInfoForParsing(true);

llvm/test/CodeGen/SPIRV/branching/switch-range-check.ll

Lines changed: 20 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,19 @@
88

99
define spir_func void @foo(i64 noundef %addr, i64 noundef %as) {
1010
entry:
11-
%0 = inttoptr i64 %as to ptr addrspace(4)
12-
%1 = load i8, ptr addrspace(4) %0
13-
%cmp = icmp sgt i8 %1, 0
11+
%src = inttoptr i64 %as to ptr addrspace(4)
12+
%val = load i8, ptr addrspace(4) %src
13+
%cmp = icmp sgt i8 %val, 0
1414
br i1 %cmp, label %if.then, label %if.end
1515

16-
if.then: ; preds = %entry
17-
%add.ptr = getelementptr inbounds i8, ptr addrspace(4) %0, i64 1
18-
%2 = load i8, ptr addrspace(4) %add.ptr
16+
if.then:
17+
%add.ptr = getelementptr inbounds i8, ptr addrspace(4) %src, i64 1
18+
%cond = load i8, ptr addrspace(4) %add.ptr
1919
br label %if.end
2020

21-
if.end: ; preds = %if.then, %entry
22-
%shadow_value.0.in = phi i8 [ %2, %if.then ], [ %1, %entry ]
23-
switch i8 %shadow_value.0.in, label %sw.default [
21+
if.end:
22+
%swval = phi i8 [ %cond, %if.then ], [ %val, %entry ]
23+
switch i8 %swval, label %sw.default [
2424
i8 -127, label %sw.epilog
2525
i8 -126, label %sw.bb3
2626
i8 -125, label %sw.bb4
@@ -35,84 +35,39 @@ if.end: ; preds = %if.then, %entry
3535
i8 -123, label %sw.bb11
3636
]
3737

38-
sw.bb3: ; preds = %if.end
38+
sw.bb3:
3939
br label %sw.epilog
4040

41-
sw.bb4: ; preds = %if.end
41+
sw.bb4:
4242
br label %sw.epilog
4343

44-
sw.bb5: ; preds = %if.end
44+
sw.bb5:
4545
br label %sw.epilog
4646

47-
sw.bb6: ; preds = %if.end
47+
sw.bb6:
4848
br label %sw.epilog
4949

50-
sw.bb7: ; preds = %if.end
50+
sw.bb7:
5151
br label %sw.epilog
5252

53-
sw.bb8: ; preds = %if.end, %if.end, %if.end
53+
sw.bb8:
5454
br label %sw.epilog
5555

56-
sw.bb9: ; preds = %if.end
56+
sw.bb9:
5757
br label %sw.epilog
5858

59-
sw.bb10: ; preds = %if.end
59+
sw.bb10:
6060
br label %sw.epilog
6161

62-
sw.bb11: ; preds = %if.end
62+
sw.bb11:
6363
br label %sw.epilog
6464

65-
sw.default: ; preds = %if.end
65+
sw.default:
6666
br label %sw.epilog
6767

68-
sw.epilog: ; preds = %sw.default, %sw.bb11, %sw.bb10, %sw.bb9, %sw.bb8, %sw.bb7, %sw.bb6, %sw.bb5, %sw.bb4, %sw.bb3, %if.end
68+
sw.epilog:
6969
br label %exit
7070

71-
if.then.i: ; preds = %sw.epilog
72-
br label %exit
73-
74-
for.cond.i: ; preds = %for.inc.i, %if.then.i
75-
br label %exit
76-
77-
for.inc.i: ; preds = %for.cond.i
78-
br label %exit
79-
80-
if.end.i: ; preds = %for.cond.i, %if.then.i
81-
br label %exit
82-
83-
if.end18.thread.i: ; preds = %if.end.i
84-
br label %5
85-
86-
for.cond8.i: ; preds = %for.inc14.i, %if.end.i
87-
br label %exit
88-
89-
for.inc14.i: ; preds = %for.cond8.i
90-
br label %exit
91-
92-
if.end18.i: ; preds = %for.cond8.i
93-
br label %5
94-
95-
5: ; preds = %if.end18.i, %if.end18.thread.i
96-
br label %for.cond25.i
97-
98-
for.cond25.i: ; preds = %for.body29.i, %5
99-
br label %exit
100-
101-
for.cond.cleanup27.i: ; preds = %for.cond25.i
102-
br label %for.cond41.i
103-
104-
for.body29.i: ; preds = %for.cond25.i
105-
br label %for.cond25.i
106-
107-
for.cond41.i: ; preds = %for.body45.i, %for.cond.cleanup27.i
108-
br label %exit
109-
110-
for.cond.cleanup43.i: ; preds = %for.cond41.i
111-
br label %exit
112-
113-
for.body45.i: ; preds = %for.cond41.i
114-
br label %for.cond41.i
115-
11671
exit:
11772
ret void
11873
}

0 commit comments

Comments
 (0)