about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAmanieu d'Antras <amanieu@gmail.com>2022-06-08 23:58:11 +0100
committerAmanieu d'Antras <amanieu@gmail.com>2022-07-21 12:41:09 +0100
commit4423341263f08ec989050a2a6746d748ebae20cf (patch)
treeddad5d7fdacde2c195a8623a0259aa9aaa54e705
parent3fcf43bb0f3e86c16a88f239da18a1729a94d244 (diff)
downloadrust-4423341263f08ec989050a2a6746d748ebae20cf.tar.gz
rust-4423341263f08ec989050a2a6746d748ebae20cf.zip
Add test for #96797
This was fixed in LLVM which was updated in #98285.

https://reviews.llvm.org/D127751

Fixes #96797
-rw-r--r--src/test/ui/asm/x86_64/issue-96797.rs26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/test/ui/asm/x86_64/issue-96797.rs b/src/test/ui/asm/x86_64/issue-96797.rs
new file mode 100644
index 00000000000..d3e0906f37a
--- /dev/null
+++ b/src/test/ui/asm/x86_64/issue-96797.rs
@@ -0,0 +1,26 @@
+// build-pass
+// compile-flags: -O
+// min-llvm-version: 14.0.5
+// needs-asm-support
+// only-x86_64
+// only-linux
+
+// regression test for #96797
+
+#![feature(asm_sym)]
+
+use std::arch::global_asm;
+
+#[no_mangle]
+fn my_func() {}
+
+global_asm!("call_foobar: jmp {}", sym foobar);
+
+fn foobar() {}
+
+fn main() {
+    extern "Rust" {
+        fn call_foobar();
+    }
+    unsafe { call_foobar() };
+}