https://gcc.gnu.org/g:f2e19364bca0182a53e2df9e4dddd9e6ba89cc7e
commit f2e19364bca0182a53e2df9e4dddd9e6ba89cc7e Author: Marc Poulhiès <d...@kataplop.net> Date: Mon Feb 19 22:36:39 2024 +0100 gccrs: fix powif64 intrinsic The signature was incorrectly using an i64 for the integer power, instead of an i32. gcc/testsuite/ChangeLog: * rust/compile/torture/intrinsics-math.rs: Adjust powif64 intrinsic signature. Signed-off-by: Marc Poulhiès <d...@kataplop.net> Diff: --- gcc/testsuite/rust/compile/torture/intrinsics-math.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gcc/testsuite/rust/compile/torture/intrinsics-math.rs b/gcc/testsuite/rust/compile/torture/intrinsics-math.rs index ab394e92e21c..e0d15f99d482 100644 --- a/gcc/testsuite/rust/compile/torture/intrinsics-math.rs +++ b/gcc/testsuite/rust/compile/torture/intrinsics-math.rs @@ -15,7 +15,7 @@ extern "rust-intrinsic" { pub fn powf64(a: f64, x: f64) -> f64; pub fn powif32(a: f32, x: i32) -> f32; - pub fn powif64(a: f64, x: i64) -> f64; + pub fn powif64(a: f64, x: i32) -> f64; pub fn expf32(x: f32) -> f32; pub fn expf64(x: f64) -> f64; @@ -93,7 +93,7 @@ fn main() { f32 = powif32(7f32, 8i32); // { dg-final { scan-tree-dump-times {(?n)f32 .* __builtin_powi. \(.*7\.0e\+0, .*8\);$} 1 original } } - f64 = powif64(9f64, 10i64); + f64 = powif64(9f64, 10i32); // { dg-final { scan-tree-dump-times {(?n)f64 .* __builtin_powi.? \(.*9\.0e\+0, .*10\);$} 1 original } } f32 = expf32(11f32);