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