feat: dlopen Enzyme by sgasho · Pull Request #149271 · rust-lang/rust (original) (raw)
I added a code to register those passes in PreProcessCache::PreProcessCache(enzyme/Enzyme/FunctionUtils.cpp) like below and the "This analysis pass was not registered prior to being queried" error disappeared
this error has been resolved, but I encountered another error in abi_handling.rs.
I'll check it later.
Details
./x test --stage 1 tests/codegen-llvm/autodiff/abi_handling.rs
Building bootstrap
Finished dev profile [unoptimized] target(s) in 0.16s
WARNING: The change-id is missing in the bootstrap.toml. This means that you will not be able to track the major changes made to the bootstrap configurations.
NOTE: to silence this warning, add change-id = 148803 or change-id = "ignore" at the top of bootstrap.toml
Building stage1 compiler artifacts (stage0 -> stage1, aarch64-apple-darwin)
Finished release profile [optimized] target(s) in 1.18s
Creating a sysroot for stage1 compiler (use rustup toolchain link 'name' build/host/stage1)
Building stage1 wasm-component-ld (stage0 -> stage1, aarch64-apple-darwin)
Finished release profile [optimized] target(s) in 0.18s
Building stage1 llvm-bitcode-linker (stage0 -> stage1, aarch64-apple-darwin)
Finished release profile [optimized] target(s) in 0.15s
Building stage1 library artifacts (stage1 -> stage1, aarch64-apple-darwin)
Compiling rustc-std-workspace-std v1.99.0 (/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/library/rustc-std-workspace-std)
Compiling rustc-literal-escaper v0.0.5
Compiling getopts v0.2.24
Compiling proc_macro v0.0.0 (/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/library/proc_macro)
Compiling test v0.0.0 (/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/library/test)
Compiling sysroot v0.0.0 (/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/library/sysroot)
Finished release profile [optimized] target(s) in 18.42s
Building stage1 compiletest (stage0 -> stage1, aarch64-apple-darwin)
Finished release profile [optimized] target(s) in 3.52s
Testing stage1 with compiletest suite=codegen-llvm mode=codegen (aarch64-apple-darwin)
running 2 tests . [codegen] tests/codegen-llvm/autodiff/abi_handling.rs#release ... F
failures:
---- [codegen] tests/codegen-llvm/autodiff/abi_handling.rs#release stdout ---- ------FileCheck stdout------------------------------
------FileCheck stderr------------------------------ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:61:18: error: release-NEXT: expected string not found in input // release-NEXT: define internal fastcc float ^ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:121:17: note: scanning from here ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable ^ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:122:1: note: possible intended match here define internal fastcc noundef float @_ZN12abi_handling3df217h8225b3063251a601E(float noundef %x) unnamed_addr #3 { ^ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:80:18: error: release-NEXT: expected string not found in input // release-NEXT: define internal fastcc { float, float } ^ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:138:17: note: scanning from here ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable ^ /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:139:1: note: possible intended match here define internal fastcc float @_ZN12abi_handling3df317h01a992588fc5860aE(float %x.0.val) unnamed_addr #3 { ^
Input file: /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll Check file: /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
.
.
.
21: @alloc_6b942ae025fc267882224af2dfb26562 = private unnamed_addr constant [120 x i8] c"o[/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:207:5] f7(in_f7) = \C1 \00\80\01\0A\00", align 1 22: @alloc_c481dc9f80d81e62696305229ddf54c2 = private unnamed_addr constant [117 x i8] c"l[/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:209:5] res_f7 = \C1 \00\80\01\0A\00", align 1
23:
24: ; std::rt::lang_start::{{closure}}
25: ; Function Attrs: inlinehint uwtable
26: define internal noundef i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8b0e7bb5ee949527E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %_1) unnamed_addr #0 {
27: start:
28: %_4 = load ptr, ptr %_1, align 8, !nonnull !3, !noundef !3
29: ; call std::sys::backtrace::__rust_begin_short_backtrace
30: tail call fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull %_4)
31: ret i32 0
32: }
33:
34: ; std::sys::backtrace::__rust_begin_short_backtrace
35: ; Function Attrs: noinline uwtable
36: define internal fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull readonly captures(none) %f) unnamed_addr #1 {
37: start:
38: tail call void %f()
39: tail call void asm sideeffect "", "~{memory}"() #7, !srcloc !4
40: ret void
41: }
42:
43: ; <&T as core::fmt::Debug>::fmt
44: ; Function Attrs: uwtable
45: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h3bdae9b704488cd6E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
46: start:
47: %_3 = load ptr, ptr %self, align 8, !nonnull !3, !align !5, !noundef !3
48: ; call core::fmt:🛟:::fmt
49: %_0 = tail call noundef zeroext i1 @"ZN4core3fmt5float50$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h72ad986133e4b700E"(ptr noalias noundef nonnull readonly align 4 captures(address, read_provenance) dereferenceable(4) %_3, ptr noalias noundef nonnull align 8 dereferenceable(24) %f)
50: ret i1 %_0
51: }
52:
53: ; <&T as core::fmt::Debug>::fmt
54: ; Function Attrs: uwtable
55: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h85611de7bcb66147E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
56: start:
57: %T.i = alloca [8 x i8], align 8
58: %U.i = alloca [8 x i8], align 8
59: %builder.i = alloca [24 x i8], align 8
60: %_3 = load ptr, ptr %self, align 8, !nonnull !3, !align !5, !noundef !3
61: call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %builder.i), !noalias !6
62: ; call core::fmt::Formatter::debug_tuple
63: call void @_ZN4core3fmt9Formatter11debug_tuple17ha32b6a48c8b713c7E(ptr noalias noundef nonnull sret([24 x i8]) align 8 captures(address) dereferenceable(24) %builder.i, ptr noalias noundef nonnull align 8 dereferenceable(24) %f, ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) inttoptr (i64 1 to ptr), i64 noundef 0), !noalias !10
64: call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %U.i), !noalias !6
65: store ptr %_3, ptr %U.i, align 8, !noalias !6
66: call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %T.i), !noalias !6
67: %0 = getelementptr inbounds nuw i8, ptr %_3, i64 4
68: store ptr %0, ptr %T.i, align 8, !noalias !6
69: ; call core::fmt::builders::DebugTuple::field
70: %_6.i = call noundef align 8 dereferenceable(24) ptr @_ZN4core3fmt8builders10DebugTuple5field17h660470c184e6b531E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull align 1 %U.i, ptr noalias noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1)
71: ; call core::fmt::builders::DebugTuple::field
72: %_10.i = call noundef align 8 dereferenceable(24) ptr @_ZN4core3fmt8builders10DebugTuple5field17h660470c184e6b531E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull align 1 %T.i, ptr noalias noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1)
73: ; call core::fmt::builders::DebugTuple::finish
74: %_0.i = call noundef zeroext i1 @_ZN4core3fmt8builders10DebugTuple6finish17h535deb1336268780E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i)
75: call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %T.i), !noalias !6
76: call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %U.i), !noalias !6
77: call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %builder.i), !noalias !6
78: ret i1 %_0.i
79: }
80:
81: ; <&T as core::fmt::Debug>::fmt
82: ; Function Attrs: uwtable
83: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9db4c3d32513474eE"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(16) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
84: start:
85: %_3.0 = load ptr, ptr %self, align 8, !nonnull !3, !align !11, !noundef !3
86: %0 = getelementptr inbounds nuw i8, ptr %self, i64 8
87: %_3.1 = load ptr, ptr %0, align 8, !nonnull !3, !align !12, !noundef !3
88: %1 = getelementptr inbounds nuw i8, ptr %_3.1, i64 24
89: %2 = load ptr, ptr %1, align 8, !invariant.load !3, !nonnull !3
90: %_0 = tail call noundef zeroext i1 %2(ptr noundef nonnull align 1 %_3.0, ptr noalias noundef nonnull align 8 dereferenceable(24) %f)
91: ret i1 %_0
92: }
93:
94: ; core::ops::function::FnOnce::call_once{{vtable.shim}}
95: ; Function Attrs: inlinehint uwtable
96: define internal noundef i32 @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h8e186a9e69699a08E"(ptr noundef readonly captures(none) %_1) unnamed_addr #0 personality ptr @rust_eh_personality {
97: start:
98: %0 = load ptr, ptr %_1, align 8, !nonnull !3, !noundef !3
99: ; call std::sys::backtrace::__rust_begin_short_backtrace
100: tail call fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull readonly %0), !noalias !13
101: ret i32 0
102: }
103:
104: ; abi_handling::df1
105: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
106: define internal fastcc float @_ZN12abi_handling3df117h9c3ecfe66d623cc2E(float %x.0.val, float %x.4.val) unnamed_addr #3 {
107: start:
108: %0 = tail call fastcc float @fwddiffe_ZN12abi_handling2f117hd0e171dfa53a2d60E(float %x.0.val, float %x.4.val)
109: ret float %0
110: }
111:
112: ; abi_handling::f1
113: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
114: define internal fastcc noundef float @_ZN12abi_handling2f117hd0e171dfa53a2d60E(float %x.0.val, float %x.4.val) unnamed_addr #3 {
115: start:
116: %_0 = fadd float %x.0.val, %x.4.val
117: ret float %_0
118: }
119:
120: ; abi_handling::df2
121: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
next:61'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
122: define internal fastcc noundef float @_ZN12abi_handling3df217h8225b3063251a601E(float noundef %x) unnamed_addr #3 {
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:61'1 ? possible intended match
123: start:
next:61'0 ~~~~~~~
124: ; call abi_handling::f2
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~
125: %0 = tail call fastcc float @_ZN12abi_handling2f217ha5269d6a663e4b66E(float %x)
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
126: ret float %0
next:61'0 ~~~~~~~~~~~~~~
127: }
next:61'0 ~~
128:
next:61'0 ~
129: ; abi_handling::f2
next:61'0 ~~~~~~~~~~~~~~~~~~
130: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
131: define internal fastcc noundef float @_ZN12abi_handling2f217ha5269d6a663e4b66E(float noundef %x) unnamed_addr #3 {
132: start:
133: %_0.i = fmul float %x, %x
134: ret float %_0.i
135: }
136:
137: ; abi_handling::df3
138: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
next:80'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
139: define internal fastcc float @_ZN12abi_handling3df317h01a992588fc5860aE(float %x.0.val) unnamed_addr #3 {
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:80'1 ? possible intended match
140: start:
next:80'0 ~~~~~~~
141: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f317h76e9fe102509bcb8E(float %x.0.val)
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
142: %oldret = extractvalue { float, float } %0, 0
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
143: ret float %oldret
next:80'0 ~~~~~~~~~~~~~~~~~~~
144: }
next:80'0 ~~
145:
next:80'0 ~
146: ; abi_handling::f3
next:80'0 ~~~~~~~~~~~~~~~~~~
147: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
148: define internal fastcc noundef float @_ZN12abi_handling2f317h76e9fe102509bcb8E(float %x.0.val) unnamed_addr #3 {
149: start:
150: %_0 = fmul float %x.0.val, 0x40099999A0000000
151: ret float %_0
152: }
153:
154: ; abi_handling::df4
155: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
156: define internal fastcc { float, float } @_ZN12abi_handling3df417h5cc6e38f26bcfe23E(float noundef %x.0, float noundef %x.1) unnamed_addr #3 {
157: start:
158: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f417h4dd0d54e71689dcaE(float %x.0, float %x.1)
159: ret { float, float } %0
160: }
161:
162: ; abi_handling::f4
163: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
164: define internal fastcc noundef float @_ZN12abi_handling2f417h4dd0d54e71689dcaE(float noundef %x.0, float noundef %x.1) unnamed_addr #3 {
165: start:
166: %_0 = fmul float %x.0, %x.1
167: ret float %_0
168: }
169:
170: ; abi_handling::df5
171: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
172: define internal fastcc { float, float } @_ZN12abi_handling3df517hb63274288df3629dE(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
173: start:
174: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f517hd1e1fe9d327743a4E(float %i.0, float %i.1)
175: ret { float, float } %0
176: }
177:
178: ; abi_handling::f5
179: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
180: define internal fastcc noundef float @_ZN12abi_handling2f517hd1e1fe9d327743a4E(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
181: start:
182: %_0 = fadd float %i.0, %i.1
183: ret float %_0
184: }
185:
186: ; abi_handling::df6
187: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
188: define internal fastcc { float, float } @_ZN12abi_handling3df617hf53c2881f50cee19E(float noundef %i.0, float noundef %i.1, float noundef %bi_0.0, float noundef %bi_0.1) unnamed_addr #3 {
189: start:
190: %0 = tail call fast fastcc { float, float } @fwddiffe_ZN12abi_handling2f617h7249eba95dfb35c5E(float %i.0, float %i.1, float %bi_0.0, float %bi_0.1)
191: ret { float, float } %0
192: }
193:
194: ; abi_handling::f6
195: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
196: define internal fastcc noundef float @_ZN12abi_handling2f617h7249eba95dfb35c5E(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
197: start:
198: %_3 = fmul float %i.1, %i.1
199: %_0 = fadd float %i.0, %_3
200: ret float %_0
201: }
202:
203: ; abi_handling::df7
204: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
205: define internal fastcc { float, float } @_ZN12abi_handling3df717h8aa14563fd386ae5E(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 {
206: start:
207: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f717h4f3a1a877e2b90fbE(float %x.0.0.val, float %x.1.0.val)
208: ret { float, float } %0
209: }
210:
211: ; abi_handling::f7
212: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
213: define internal fastcc noundef float @_ZN12abi_handling2f717h4f3a1a877e2b90fbE(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 {
214: start:
215: %_0 = fmul float %x.0.0.val, %x.1.0.val
216: ret float %_0
217: }
218:
219: ; abi_handling::main
220: ; Function Attrs: uwtable
221: define internal void @_ZN12abi_handling4main17hd7ff7d4e219205abE() unnamed_addr #2 {
222: start:
223: %0 = alloca [4 x i8], align 4
224: %args26 = alloca [16 x i8], align 8
225: %_171 = alloca [8 x i8], align 8
226: %_169 = alloca [16 x i8], align 8
227: %tmp25 = alloca [8 x i8], align 4
228: %args24 = alloca [16 x i8], align 8
229: %_159 = alloca [8 x i8], align 8
230: %_157 = alloca [16 x i8], align 8
231: %tmp23 = alloca [4 x i8], align 4
232: %args22 = alloca [16 x i8], align 8
233: %_145 = alloca [8 x i8], align 8
234: %_143 = alloca [16 x i8], align 8
235: %tmp21 = alloca [8 x i8], align 4
236: %args20 = alloca [16 x i8], align 8
237: %_132 = alloca [8 x i8], align 8
238: %_130 = alloca [16 x i8], align 8
239: %tmp19 = alloca [4 x i8], align 4
.
.
.
error in revision release: verification with 'FileCheck' failed
status: exit status: 1
command: "/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/llvm/build/bin/FileCheck" "--input-file" "/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll" "/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs" "--check-prefix=CHECK" "--check-prefix" "release" "--allow-unused-prefixes" "--dump-input-context" "100"
stdout: none
--- stderr -------------------------------
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:61:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc float
^
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:121:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
^
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:122:1: note: possible intended match here
define internal fastcc noundef float @_ZN12abi_handling3df217h8225b3063251a601E(float noundef %x) unnamed_addr #3 {
^
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:80:18: error: release-NEXT: expected string not found in input
// release-NEXT: define internal fastcc { float, float }
^
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:138:17: note: scanning from here
; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
^
/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll:139:1: note: possible intended match here
define internal fastcc float @_ZN12abi_handling3df317h01a992588fc5860aE(float %x.0.val) unnamed_addr #3 {
^
Input file: /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/build/aarch64-apple-darwin/test/codegen-llvm/autodiff/abi_handling.release/abi_handling.ll Check file: /Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs
-dump-input=help explains the following input dump.
Input was:
<<<<<<
.
.
.
21: @alloc_6b942ae025fc267882224af2dfb26562 = private unnamed_addr constant [120 x i8] c"o[/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:207:5] f7(in_f7) = \C1 \00\80\01\0A\00", align 1 22: @alloc_c481dc9f80d81e62696305229ddf54c2 = private unnamed_addr constant [117 x i8] c"l[/Volumes/WD_BLACK_SN850X_HS_1TB/rust-lang/rust/tests/codegen-llvm/autodiff/abi_handling.rs:209:5] res_f7 = \C1 \00\80\01\0A\00", align 1
23:
24: ; std::rt::lang_start::{{closure}}
25: ; Function Attrs: inlinehint uwtable
26: define internal noundef i32 @"_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8b0e7bb5ee949527E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %_1) unnamed_addr #0 {
27: start:
28: %_4 = load ptr, ptr %_1, align 8, !nonnull !3, !noundef !3
29: ; call std::sys::backtrace::__rust_begin_short_backtrace
30: tail call fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull %_4)
31: ret i32 0
32: }
33:
34: ; std::sys::backtrace::__rust_begin_short_backtrace
35: ; Function Attrs: noinline uwtable
36: define internal fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull readonly captures(none) %f) unnamed_addr #1 {
37: start:
38: tail call void %f()
39: tail call void asm sideeffect "", "~{memory}"() #7, !srcloc !4
40: ret void
41: }
42:
43: ; <&T as core::fmt::Debug>::fmt
44: ; Function Attrs: uwtable
45: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h3bdae9b704488cd6E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
46: start:
47: %_3 = load ptr, ptr %self, align 8, !nonnull !3, !align !5, !noundef !3
48: ; call core::fmt:🛟:::fmt
49: %_0 = tail call noundef zeroext i1 @"ZN4core3fmt5float50$LT$impl$u20$core..fmt..Debug$u20$for$u20$f32$GT$3fmt17h72ad986133e4b700E"(ptr noalias noundef nonnull readonly align 4 captures(address, read_provenance) dereferenceable(4) %_3, ptr noalias noundef nonnull align 8 dereferenceable(24) %f)
50: ret i1 %_0
51: }
52:
53: ; <&T as core::fmt::Debug>::fmt
54: ; Function Attrs: uwtable
55: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h85611de7bcb66147E"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(8) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
56: start:
57: %T.i = alloca [8 x i8], align 8
58: %U.i = alloca [8 x i8], align 8
59: %builder.i = alloca [24 x i8], align 8
60: %_3 = load ptr, ptr %self, align 8, !nonnull !3, !align !5, !noundef !3
61: call void @llvm.lifetime.start.p0(i64 24, ptr nonnull %builder.i), !noalias !6
62: ; call core::fmt::Formatter::debug_tuple
63: call void @_ZN4core3fmt9Formatter11debug_tuple17ha32b6a48c8b713c7E(ptr noalias noundef nonnull sret([24 x i8]) align 8 captures(address) dereferenceable(24) %builder.i, ptr noalias noundef nonnull align 8 dereferenceable(24) %f, ptr noalias noundef nonnull readonly align 1 captures(address, read_provenance) inttoptr (i64 1 to ptr), i64 noundef 0), !noalias !10
64: call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %U.i), !noalias !6
65: store ptr %_3, ptr %U.i, align 8, !noalias !6
66: call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %T.i), !noalias !6
67: %0 = getelementptr inbounds nuw i8, ptr %_3, i64 4
68: store ptr %0, ptr %T.i, align 8, !noalias !6
69: ; call core::fmt::builders::DebugTuple::field
70: %_6.i = call noundef align 8 dereferenceable(24) ptr @_ZN4core3fmt8builders10DebugTuple5field17h660470c184e6b531E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull align 1 %U.i, ptr noalias noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1)
71: ; call core::fmt::builders::DebugTuple::field
72: %_10.i = call noundef align 8 dereferenceable(24) ptr @_ZN4core3fmt8builders10DebugTuple5field17h660470c184e6b531E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i, ptr noundef nonnull align 1 %T.i, ptr noalias noundef readonly align 8 captures(address, read_provenance) dereferenceable(32) @vtable.1)
73: ; call core::fmt::builders::DebugTuple::finish
74: %_0.i = call noundef zeroext i1 @_ZN4core3fmt8builders10DebugTuple6finish17h535deb1336268780E(ptr noalias noundef nonnull align 8 dereferenceable(24) %builder.i)
75: call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %T.i), !noalias !6
76: call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %U.i), !noalias !6
77: call void @llvm.lifetime.end.p0(i64 24, ptr nonnull %builder.i), !noalias !6
78: ret i1 %_0.i
79: }
80:
81: ; <&T as core::fmt::Debug>::fmt
82: ; Function Attrs: uwtable
83: define internal noundef zeroext i1 @"ZN42$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h9db4c3d32513474eE"(ptr noalias noundef readonly align 8 captures(none) dereferenceable(16) %self, ptr noalias noundef align 8 dereferenceable(24) %f) unnamed_addr #2 {
84: start:
85: %_3.0 = load ptr, ptr %self, align 8, !nonnull !3, !align !11, !noundef !3
86: %0 = getelementptr inbounds nuw i8, ptr %self, i64 8
87: %_3.1 = load ptr, ptr %0, align 8, !nonnull !3, !align !12, !noundef !3
88: %1 = getelementptr inbounds nuw i8, ptr %_3.1, i64 24
89: %2 = load ptr, ptr %1, align 8, !invariant.load !3, !nonnull !3
90: %_0 = tail call noundef zeroext i1 %2(ptr noundef nonnull align 1 %_3.0, ptr noalias noundef nonnull align 8 dereferenceable(24) %f)
91: ret i1 %_0
92: }
93:
94: ; core::ops::function::FnOnce::call_once{{vtable.shim}}
95: ; Function Attrs: inlinehint uwtable
96: define internal noundef i32 @"_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h8e186a9e69699a08E"(ptr noundef readonly captures(none) %_1) unnamed_addr #0 personality ptr @rust_eh_personality {
97: start:
98: %0 = load ptr, ptr %_1, align 8, !nonnull !3, !noundef !3
99: ; call std::sys::backtrace::__rust_begin_short_backtrace
100: tail call fastcc void @_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he1d7c76f57d71128E(ptr noundef nonnull readonly %0), !noalias !13
101: ret i32 0
102: }
103:
104: ; abi_handling::df1
105: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
106: define internal fastcc float @_ZN12abi_handling3df117h9c3ecfe66d623cc2E(float %x.0.val, float %x.4.val) unnamed_addr #3 {
107: start:
108: %0 = tail call fastcc float @fwddiffe_ZN12abi_handling2f117hd0e171dfa53a2d60E(float %x.0.val, float %x.4.val)
109: ret float %0
110: }
111:
112: ; abi_handling::f1
113: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
114: define internal fastcc noundef float @_ZN12abi_handling2f117hd0e171dfa53a2d60E(float %x.0.val, float %x.4.val) unnamed_addr #3 {
115: start:
116: %_0 = fadd float %x.0.val, %x.4.val
117: ret float %_0
118: }
119:
120: ; abi_handling::df2
121: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
next:61'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
122: define internal fastcc noundef float @_ZN12abi_handling3df217h8225b3063251a601E(float noundef %x) unnamed_addr #3 {
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:61'1 ? possible intended match
123: start:
next:61'0 ~~~~~~~
124: ; call abi_handling::f2
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~
125: %0 = tail call fastcc float @_ZN12abi_handling2f217ha5269d6a663e4b66E(float %x)
next:61'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
126: ret float %0
next:61'0 ~~~~~~~~~~~~~~
127: }
next:61'0 ~~
128:
next:61'0 ~
129: ; abi_handling::f2
next:61'0 ~~~~~~~~~~~~~~~~~~
130: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
131: define internal fastcc noundef float @_ZN12abi_handling2f217ha5269d6a663e4b66E(float noundef %x) unnamed_addr #3 {
132: start:
133: %_0.i = fmul float %x, %x
134: ret float %_0.i
135: }
136:
137: ; abi_handling::df3
138: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
next:80'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
139: define internal fastcc float @_ZN12abi_handling3df317h01a992588fc5860aE(float %x.0.val) unnamed_addr #3 {
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
next:80'1 ? possible intended match
140: start:
next:80'0 ~~~~~~~
141: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f317h76e9fe102509bcb8E(float %x.0.val)
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
142: %oldret = extractvalue { float, float } %0, 0
next:80'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
143: ret float %oldret
next:80'0 ~~~~~~~~~~~~~~~~~~~
144: }
next:80'0 ~~
145:
next:80'0 ~
146: ; abi_handling::f3
next:80'0 ~~~~~~~~~~~~~~~~~~
147: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
148: define internal fastcc noundef float @_ZN12abi_handling2f317h76e9fe102509bcb8E(float %x.0.val) unnamed_addr #3 {
149: start:
150: %_0 = fmul float %x.0.val, 0x40099999A0000000
151: ret float %_0
152: }
153:
154: ; abi_handling::df4
155: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
156: define internal fastcc { float, float } @_ZN12abi_handling3df417h5cc6e38f26bcfe23E(float noundef %x.0, float noundef %x.1) unnamed_addr #3 {
157: start:
158: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f417h4dd0d54e71689dcaE(float %x.0, float %x.1)
159: ret { float, float } %0
160: }
161:
162: ; abi_handling::f4
163: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
164: define internal fastcc noundef float @_ZN12abi_handling2f417h4dd0d54e71689dcaE(float noundef %x.0, float noundef %x.1) unnamed_addr #3 {
165: start:
166: %_0 = fmul float %x.0, %x.1
167: ret float %_0
168: }
169:
170: ; abi_handling::df5
171: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
172: define internal fastcc { float, float } @_ZN12abi_handling3df517hb63274288df3629dE(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
173: start:
174: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f517hd1e1fe9d327743a4E(float %i.0, float %i.1)
175: ret { float, float } %0
176: }
177:
178: ; abi_handling::f5
179: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
180: define internal fastcc noundef float @_ZN12abi_handling2f517hd1e1fe9d327743a4E(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
181: start:
182: %_0 = fadd float %i.0, %i.1
183: ret float %_0
184: }
185:
186: ; abi_handling::df6
187: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
188: define internal fastcc { float, float } @_ZN12abi_handling3df617hf53c2881f50cee19E(float noundef %i.0, float noundef %i.1, float noundef %bi_0.0, float noundef %bi_0.1) unnamed_addr #3 {
189: start:
190: %0 = tail call fast fastcc { float, float } @fwddiffe_ZN12abi_handling2f617h7249eba95dfb35c5E(float %i.0, float %i.1, float %bi_0.0, float %bi_0.1)
191: ret { float, float } %0
192: }
193:
194: ; abi_handling::f6
195: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
196: define internal fastcc noundef float @_ZN12abi_handling2f617h7249eba95dfb35c5E(float noundef %i.0, float noundef %i.1) unnamed_addr #3 {
197: start:
198: %_3 = fmul float %i.1, %i.1
199: %_0 = fadd float %i.0, %_3
200: ret float %_0
201: }
202:
203: ; abi_handling::df7
204: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
205: define internal fastcc { float, float } @_ZN12abi_handling3df717h8aa14563fd386ae5E(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 {
206: start:
207: %0 = tail call fastcc { float, float } @fwddiffe_ZN12abi_handling2f717h4f3a1a877e2b90fbE(float %x.0.0.val, float %x.1.0.val)
208: ret { float, float } %0
209: }
210:
211: ; abi_handling::f7
212: ; Function Attrs: mustprogress nofree noinline norecurse nosync nounwind willreturn memory(none) uwtable
213: define internal fastcc noundef float @_ZN12abi_handling2f717h4f3a1a877e2b90fbE(float %x.0.0.val, float %x.1.0.val) unnamed_addr #3 {
214: start:
215: %_0 = fmul float %x.0.0.val, %x.1.0.val
216: ret float %_0
217: }
218:
219: ; abi_handling::main
220: ; Function Attrs: uwtable
221: define internal void @_ZN12abi_handling4main17hd7ff7d4e219205abE() unnamed_addr #2 {
222: start:
223: %0 = alloca [4 x i8], align 4
224: %args26 = alloca [16 x i8], align 8
225: %_171 = alloca [8 x i8], align 8
226: %_169 = alloca [16 x i8], align 8
227: %tmp25 = alloca [8 x i8], align 4
228: %args24 = alloca [16 x i8], align 8
229: %_159 = alloca [8 x i8], align 8
230: %_157 = alloca [16 x i8], align 8
231: %tmp23 = alloca [4 x i8], align 4
232: %args22 = alloca [16 x i8], align 8
233: %_145 = alloca [8 x i8], align 8
234: %_143 = alloca [16 x i8], align 8
235: %tmp21 = alloca [8 x i8], align 4
236: %args20 = alloca [16 x i8], align 8
237: %_132 = alloca [8 x i8], align 8
238: %_130 = alloca [16 x i8], align 8
239: %tmp19 = alloca [4 x i8], align 4
.
.
.
>>>>>>
---- [codegen] tests/codegen-llvm/autodiff/abi_handling.rs#release stdout end ----
failures: [codegen] tests/codegen-llvm/autodiff/abi_handling.rs#release
test result: FAILED. 1 passed; 1 failed; 0 ignored; 0 measured; 963 filtered out; finished in 1.19s
Some tests failed in compiletest suite=codegen-llvm mode=codegen host=aarch64-apple-darwin target=aarch64-apple-darwin Build completed unsuccessfully in 0:00:38