From: Arthur Cohen <[email protected]>
gcc/testsuite/ChangeLog:
* rust/compile/macros/builtin/eager1.rs: Switch to scan-assembler
directive as the
GIMPLE dump does not contain strings on LE.
* rust/compile/macros/builtin/recurse2.rs: Likewise.
---
.../rust/compile/macros/builtin/eager1.rs | 2 +-
.../rust/compile/macros/builtin/recurse2.rs | 26 +++++++++++++++++--
2 files changed, 25 insertions(+), 3 deletions(-)
diff --git a/gcc/testsuite/rust/compile/macros/builtin/eager1.rs
b/gcc/testsuite/rust/compile/macros/builtin/eager1.rs
index 65a80fda62e..7c6f6f95d61 100644
--- a/gcc/testsuite/rust/compile/macros/builtin/eager1.rs
+++ b/gcc/testsuite/rust/compile/macros/builtin/eager1.rs
@@ -15,7 +15,7 @@ macro_rules! b {
}
fn main() {
- // { dg-final { scan-tree-dump-times {"test1canary"} 1 gimple } }
+ // { dg-final { scan-assembler {"test1canary"} } }
let _ = concat!(a!(), 1, b!());
// should not error
concat!(a!(), true, b!(),);
diff --git a/gcc/testsuite/rust/compile/macros/builtin/recurse2.rs
b/gcc/testsuite/rust/compile/macros/builtin/recurse2.rs
index 2e73ab54fb6..73e6ab4aa6c 100644
--- a/gcc/testsuite/rust/compile/macros/builtin/recurse2.rs
+++ b/gcc/testsuite/rust/compile/macros/builtin/recurse2.rs
@@ -15,7 +15,29 @@ macro_rules! a {
};
}
+extern "C" {
+ fn printf(fmt: *const i8, ...);
+}
+
+fn print_ptr(s: &str) {
+ unsafe {
+ printf("%p\n\0" as *const str as *const i8, s as *const str);
+ }
+}
+
+fn print_str(s: &str) {
+ unsafe {
+ printf(
+ "%s\n\0" as *const str as *const i8,
+ s as *const str as *const i8,
+ );
+ }
+}
+
+// { dg-final { scan-assembler {"abheyho"} } }
+static S: &str = concat!("a", 'b', a!(), a!(b c d e f a!()), '\0');
+
fn main() {
- // { dg-final { scan-tree-dump-times {"abheyho"} 1 gimple } }
- let _ = concat!("a", 'b', a!(), a!(b c d e f a!()), '\0');
+ print_ptr(S);
+ print_str(S);
}
--
2.45.2