|
1 | 1 | Auto generated patch. Do not edit or delete it, even if empty.
|
2 |
| -diff -ruN --strip-trailing-cr a/clang/lib/APINotes/APINotesWriter.cpp b/clang/lib/APINotes/APINotesWriter.cpp |
3 |
| ---- a/clang/lib/APINotes/APINotesWriter.cpp |
4 |
| -+++ b/clang/lib/APINotes/APINotesWriter.cpp |
5 |
| -@@ -441,7 +441,7 @@ |
6 |
| - std::sort(VI.begin(), VI.end(), |
7 |
| - [](const std::pair<VersionTuple, T> &LHS, |
8 |
| - const std::pair<VersionTuple, T> &RHS) -> bool { |
9 |
| -- assert(LHS.first != RHS.first && |
10 |
| -+ assert((&LHS == &RHS || LHS.first != RHS.first) && |
11 |
| - "two entries for the same version"); |
12 |
| - return LHS.first < RHS.first; |
13 |
| - }); |
14 |
| -diff -ruN --strip-trailing-cr a/clang/test/APINotes/module-cache.m b/clang/test/APINotes/module-cache.m |
15 |
| ---- a/clang/test/APINotes/module-cache.m |
16 |
| -+++ b/clang/test/APINotes/module-cache.m |
17 |
| -@@ -27,6 +27,7 @@ |
18 |
| - // RUN: FileCheck -check-prefix=CHECK-ONE-ERROR %s < %t/before.log |
19 |
| - |
20 |
| - // Change the API notes file, after the module has rebuilt once. |
21 |
| -+// RUN: chmod u+w %t/APINotes/SomeOtherKit.apinotes |
22 |
| - // RUN: echo ' - Selector: "methodA"' >> %t/APINotes/SomeOtherKit.apinotes |
23 |
| - // RUN: echo ' MethodKind: Instance' >> %t/APINotes/SomeOtherKit.apinotes |
24 |
| - // RUN: echo ' Availability: none' >> %t/APINotes/SomeOtherKit.apinotes |
25 |
| -diff -ruN --strip-trailing-cr a/lld/test/ELF/lto/libcall-archive.ll b/lld/test/ELF/lto/libcall-archive.ll |
26 |
| ---- a/lld/test/ELF/lto/libcall-archive.ll |
27 |
| -+++ b/lld/test/ELF/lto/libcall-archive.ll |
28 |
| -@@ -4,8 +4,8 @@ |
29 |
| - ; RUN: llvm-as -o %t2.o %S/Inputs/libcall-archive.ll |
30 |
| - ; RUN: llvm-mc -filetype=obj -triple=x86_64-unknown-linux -o %t3.o %S/Inputs/libcall-archive.s |
31 |
| - ; RUN: llvm-ar rcs %t.a %t2.o %t3.o |
32 |
| --; RUN: ld.lld --why-extract=why.txt -o %t %t.o %t.a |
33 |
| --; RUN: FileCheck %s --input-file=why.txt --check-prefix=CHECK-WHY |
34 |
| -+; RUN: ld.lld --why-extract=%t.why.txt -o %t %t.o %t.a |
35 |
| -+; RUN: FileCheck %s --input-file=%t.why.txt --check-prefix=CHECK-WHY |
36 |
| - ; RUN: llvm-nm %t | FileCheck %s |
37 |
| - ; RUN: ld.lld -o %t2 %t.o --start-lib %t2.o %t3.o --end-lib |
38 |
| - ; RUN: llvm-nm %t2 | FileCheck %s |
39 |
| -diff -ruN --strip-trailing-cr a/llvm/include/llvm/IR/Verifier.h b/llvm/include/llvm/IR/Verifier.h |
40 |
| ---- a/llvm/include/llvm/IR/Verifier.h |
41 |
| -+++ b/llvm/include/llvm/IR/Verifier.h |
42 |
| -@@ -77,7 +77,6 @@ |
43 |
| - /// Visit an instruction and return true if it is valid, return false if an |
44 |
| - /// invalid TBAA is attached. |
45 |
| - bool visitTBAAMetadata(Instruction &I, const MDNode *MD); |
46 |
| -- bool visitTBAAStructMetadata(Instruction &I, const MDNode *MD); |
47 |
| - }; |
48 |
| - |
49 |
| - /// Check a function for errors, useful for use when debugging a |
50 |
| -diff -ruN --strip-trailing-cr a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp |
51 |
| ---- a/llvm/lib/IR/Verifier.cpp |
52 |
| -+++ b/llvm/lib/IR/Verifier.cpp |
53 |
| -@@ -5096,9 +5096,6 @@ |
54 |
| - if (MDNode *TBAA = I.getMetadata(LLVMContext::MD_tbaa)) |
55 |
| - TBAAVerifyHelper.visitTBAAMetadata(I, TBAA); |
56 |
| - |
57 |
| -- if (MDNode *TBAA = I.getMetadata(LLVMContext::MD_tbaa_struct)) |
58 |
| -- TBAAVerifyHelper.visitTBAAStructMetadata(I, TBAA); |
59 |
| -- |
60 |
| - if (MDNode *MD = I.getMetadata(LLVMContext::MD_noalias)) |
61 |
| - visitAliasScopeListMetadata(MD); |
62 |
| - if (MDNode *MD = I.getMetadata(LLVMContext::MD_alias_scope)) |
63 |
| -@@ -7422,35 +7419,6 @@ |
64 |
| - return true; |
65 |
| - } |
66 |
| - |
67 |
| --bool TBAAVerifier::visitTBAAStructMetadata(Instruction &I, const MDNode *MD) { |
68 |
| -- CheckTBAA(MD->getNumOperands() % 3 == 0, |
69 |
| -- "tbaa.struct operands must occur in groups of three", &I, MD); |
70 |
| -- |
71 |
| -- // Each group of three operands must consist of two integers and a |
72 |
| -- // tbaa node. Moreover, the regions described by the offset and size |
73 |
| -- // operands must be non-overlapping. |
74 |
| -- std::optional<APInt> NextFree; |
75 |
| -- for (unsigned int Idx = 0; Idx < MD->getNumOperands(); Idx += 3) { |
76 |
| -- auto *OffsetCI = |
77 |
| -- mdconst::dyn_extract_or_null<ConstantInt>(MD->getOperand(Idx)); |
78 |
| -- CheckTBAA(OffsetCI, "Offset must be a constant integer", &I, MD); |
79 |
| -- |
80 |
| -- auto *SizeCI = |
81 |
| -- mdconst::dyn_extract_or_null<ConstantInt>(MD->getOperand(Idx + 1)); |
82 |
| -- CheckTBAA(SizeCI, "Size must be a constant integer", &I, MD); |
83 |
| -- |
84 |
| -- MDNode *TBAA = dyn_cast_or_null<MDNode>(MD->getOperand(Idx + 2)); |
85 |
| -- CheckTBAA(TBAA, "TBAA tag missing", &I, MD); |
86 |
| -- visitTBAAMetadata(I, TBAA); |
87 |
| -- |
88 |
| -- bool NonOverlapping = !NextFree || NextFree->ule(OffsetCI->getValue()); |
89 |
| -- CheckTBAA(NonOverlapping, "Overlapping tbaa.struct regions", &I, MD); |
90 |
| -- |
91 |
| -- NextFree = OffsetCI->getValue() + SizeCI->getValue(); |
92 |
| -- } |
93 |
| -- return true; |
94 |
| --} |
95 |
| -- |
96 |
| - char VerifierLegacyPass::ID = 0; |
97 |
| - INITIALIZE_PASS(VerifierLegacyPass, "verify", "Module Verifier", false, false) |
98 |
| - |
99 |
| -diff -ruN --strip-trailing-cr a/llvm/test/CodeGen/AArch64/arm64-abi_align.ll b/llvm/test/CodeGen/AArch64/arm64-abi_align.ll |
100 |
| ---- a/llvm/test/CodeGen/AArch64/arm64-abi_align.ll |
101 |
| -+++ b/llvm/test/CodeGen/AArch64/arm64-abi_align.ll |
102 |
| -@@ -518,6 +518,4 @@ |
103 |
| - !1 = !{!"omnipotent char", !2} |
104 |
| - !2 = !{!"Simple C/C++ TBAA"} |
105 |
| - !3 = !{!"short", !1} |
106 |
| --!4 = !{i64 0, i64 4, !5, i64 4, i64 2, !6, i64 8, i64 4, !5, i64 12, i64 2, !6, i64 16, i64 4, !5, i64 20, i64 2, !6} |
107 |
| --!5 = !{!0, !0, i64 0} |
108 |
| --!6 = !{!3, !3, i64 0} |
109 |
| -+!4 = !{i64 0, i64 4, !0, i64 4, i64 2, !3, i64 8, i64 4, !0, i64 12, i64 2, !3, i64 16, i64 4, !0, i64 20, i64 2, !3} |
110 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll b/llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll |
111 |
| ---- a/llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll |
112 |
| -+++ b/llvm/test/Transforms/InferAddressSpaces/AMDGPU/mem-intrinsics.ll |
113 |
| -@@ -141,4 +141,4 @@ |
114 |
| - !5 = distinct !{!5, !"some domain"} |
115 |
| - !6 = !{!7} |
116 |
| - !7 = distinct !{!7, !5, !"some scope 2"} |
117 |
| --!8 = !{i64 0, i64 8, !0} |
118 |
| -+!8 = !{i64 0, i64 8, null} |
119 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll b/llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll |
120 |
| ---- a/llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll |
121 |
| -+++ b/llvm/test/Transforms/InstCombine/struct-assign-tbaa.ll |
122 |
| -@@ -75,7 +75,7 @@ |
123 |
| - !1 = !{!"omnipotent char", !0} |
124 |
| - !2 = !{!5, !5, i64 0} |
125 |
| - !3 = !{i64 0, i64 4, !2} |
126 |
| --!4 = !{i64 0, i64 8, !2} |
127 |
| -+!4 = !{i64 0, i64 8, null} |
128 |
| - !5 = !{!"float", !0} |
129 |
| - !6 = !{i64 0, i64 4, !2, i64 4, i64 4, !2} |
130 |
| - !7 = !{i64 0, i64 2, !2, i64 4, i64 6, !2} |
131 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll b/llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll |
132 |
| ---- a/llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll |
133 |
| -+++ b/llvm/test/Transforms/Scalarizer/basic-inseltpoison.ll |
134 |
| -@@ -836,6 +836,5 @@ |
135 |
| - !2 = !{ !"set2", !0 } |
136 |
| - !3 = !{ !3, !{!"llvm.loop.parallel_accesses", !13} } |
137 |
| - !4 = !{ float 4.0 } |
138 |
| --!5 = !{ i64 0, i64 8, !6 } |
139 |
| --!6 = !{ !1, !1, i64 0 } |
140 |
| -+!5 = !{ i64 0, i64 8, null } |
141 |
| - !13 = distinct !{} |
142 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Transforms/Scalarizer/basic.ll b/llvm/test/Transforms/Scalarizer/basic.ll |
143 |
| ---- a/llvm/test/Transforms/Scalarizer/basic.ll |
144 |
| -+++ b/llvm/test/Transforms/Scalarizer/basic.ll |
145 |
| -@@ -870,6 +870,5 @@ |
146 |
| - !2 = !{ !"set2", !0 } |
147 |
| - !3 = !{ !3, !{!"llvm.loop.parallel_accesses", !13} } |
148 |
| - !4 = !{ float 4.0 } |
149 |
| --!5 = !{ i64 0, i64 8, !6 } |
150 |
| --!6 = !{ !1, !1, i64 0 } |
151 |
| -+!5 = !{ i64 0, i64 8, null } |
152 |
| - !13 = distinct !{} |
153 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Transforms/SROA/tbaa-struct3.ll b/llvm/test/Transforms/SROA/tbaa-struct3.ll |
154 |
| ---- a/llvm/test/Transforms/SROA/tbaa-struct3.ll |
155 |
| -+++ b/llvm/test/Transforms/SROA/tbaa-struct3.ll |
156 |
| -@@ -539,7 +539,7 @@ |
157 |
| - !6 = !{!5, !5, i64 0} |
158 |
| - !7 = !{i64 0, i64 8, !6, i64 8, i64 4, !1} |
159 |
| - !8 = !{i64 0, i64 4, !1, i64 4, i64 8, !6} |
160 |
| --!9 = !{i64 0, i64 8, !6, i64 8, i64 8, !1} |
161 |
| -+!9 = !{i64 0, i64 8, !6, i64 4, i64 8, !1} |
162 |
| - !10 = !{i64 0, i64 2, !1, i64 2, i64 2, !1} |
163 |
| - !11 = !{i64 0, i64 1, !1, i64 1, i64 3, !1} |
164 |
| - !12 = !{i64 0, i64 2, !1, i64 2, i64 6, !1} |
165 |
| -diff -ruN --strip-trailing-cr a/llvm/test/Verifier/tbaa-struct.ll b/llvm/test/Verifier/tbaa-struct.ll |
166 |
| ---- a/llvm/test/Verifier/tbaa-struct.ll |
167 |
| -+++ b/llvm/test/Verifier/tbaa-struct.ll |
168 |
| -@@ -1,36 +1,28 @@ |
169 |
| --; RUN: not llvm-as < %s 2>&1 | FileCheck %s |
170 |
| -+; RUN: llvm-as < %s 2>&1 |
171 |
| -+ |
172 |
| -+; FIXME: The verifer should reject the invalid !tbaa.struct nodes below. |
173 |
| - |
174 |
| - define void @test_overlapping_regions(ptr %a1) { |
175 |
| --; CHECK: Overlapping tbaa.struct regions |
176 |
| --; CHECK-NEXT: %ld = load i8, ptr %a1, align 1, !tbaa.struct !0 |
177 |
| - %ld = load i8, ptr %a1, align 1, !tbaa.struct !0 |
178 |
| - ret void |
179 |
| - } |
180 |
| - |
181 |
| - define void @test_size_not_integer(ptr %a1) { |
182 |
| --; CHECK: Size must be a constant integer |
183 |
| --; CHECK-NEXT: store i8 1, ptr %a1, align 1, !tbaa.struct !5 |
184 |
| - store i8 1, ptr %a1, align 1, !tbaa.struct !5 |
185 |
| - ret void |
186 |
| - } |
187 |
| - |
188 |
| - define void @test_offset_not_integer(ptr %a1, ptr %a2) { |
189 |
| --; CHECK: Offset must be a constant integer |
190 |
| --; CHECK-NEXT: tail call void @llvm.memcpy.p0.p0.i64(ptr align 8 %a1, ptr align 8 %a2, i64 16, i1 false), !tbaa.struct !6 |
191 |
| - tail call void @llvm.memcpy.p0.p0.i64(ptr align 8 %a1, ptr align 8 %a2, i64 16, i1 false), !tbaa.struct !6 |
192 |
| - ret void |
193 |
| - } |
194 |
| - |
195 |
| - define void @test_tbaa_missing(ptr %a1, ptr %a2) { |
196 |
| --; CHECK: TBAA tag missing |
197 |
| --; CHECK-NEXT: tail call void @llvm.memcpy.p0.p0.i64(ptr align 8 %a1, ptr align 8 %a2, i64 16, i1 false), !tbaa.struct !7 |
198 |
| - tail call void @llvm.memcpy.p0.p0.i64(ptr align 8 %a1, ptr align 8 %a2, i64 16, i1 false), !tbaa.struct !7 |
199 |
| - ret void |
200 |
| - } |
201 |
| - |
202 |
| - define void @test_tbaa_invalid(ptr %a1) { |
203 |
| --; CHECK: Old-style TBAA is no longer allowed, use struct-path TBAA instead |
204 |
| --; CHECK-NEXT: store i8 1, ptr %a1, align 1, !tbaa.struct !8 |
205 |
| - store i8 1, ptr %a1, align 1, !tbaa.struct !8 |
206 |
| - ret void |
207 |
| - } |
0 commit comments