From dce3433f8e6829d4020b89c7d6011b2f69e5cca5 Mon Sep 17 00:00:00 2001 From: sgasho Date: Tue, 19 May 2026 15:11:15 +0000 Subject: [PATCH 1/2] Fix LLVM IR expectations for the autodiff generic test --- tests/codegen-llvm/autodiff/generic.rs | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tests/codegen-llvm/autodiff/generic.rs b/tests/codegen-llvm/autodiff/generic.rs index b31468c91c9c2..8ba87a71556bb 100644 --- a/tests/codegen-llvm/autodiff/generic.rs +++ b/tests/codegen-llvm/autodiff/generic.rs @@ -34,8 +34,17 @@ fn square + Copy>(x: &T) -> T { // F64-NEXT: ; Function Attrs: {{.*}} // F64-NEXT: define internal {{.*}} void // F64-NEXT: start: -// F64-NEXT: {{(tail )?}}call {{(fastcc )?}}void @diffe_{{.*}}(double {{.*}}, ptr {{.*}}) -// F64-NEXT: ret void +// F64-NEXT: {{(tail )?}}call {{.*}} @diffe_{{.*}} +// F64: ret void + +// Ensure that `square::` is generated so that it can be differentiated + +// F64-LABEL: ; generic::square:: +// F64-NEXT: ; Function Attrs: {{.*}} +// F64-NEXT: define internal {{.*}} double +// F64-NEXT: start: +// F64-NOT: ret +// F64: fmul double // Main-LABEL: ; generic::main // Main: ; call generic::square:: From 3c06aea4e19ef49b892aa9800a364238908aba42 Mon Sep 17 00:00:00 2001 From: sgasho Date: Wed, 20 May 2026 15:13:59 +0000 Subject: [PATCH 2/2] Clarify the return types in LLVM IR for autodiff generic test --- tests/codegen-llvm/autodiff/generic.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/codegen-llvm/autodiff/generic.rs b/tests/codegen-llvm/autodiff/generic.rs index 8ba87a71556bb..341fed77239af 100644 --- a/tests/codegen-llvm/autodiff/generic.rs +++ b/tests/codegen-llvm/autodiff/generic.rs @@ -34,7 +34,7 @@ fn square + Copy>(x: &T) -> T { // F64-NEXT: ; Function Attrs: {{.*}} // F64-NEXT: define internal {{.*}} void // F64-NEXT: start: -// F64-NEXT: {{(tail )?}}call {{.*}} @diffe_{{.*}} +// F64-NEXT: {{(tail )?}}call {{.*}}{ double } @diffe_{{.*}}(ptr {{.*}}, ptr {{.*}}, double {{.*}}) // F64: ret void // Ensure that `square::` is generated so that it can be differentiated