From: Arthur Cohen <arthur.co...@embecosm.com>

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

Reply via email to