Browse Source

Add separate rust_probestack definition for uefi (#335)

This is necessary because the Mach-O definition must have the
triple underscore, but the UEFI one must not.
Adam Schwalm 5 years ago
parent
commit
d7191b14c1
1 changed files with 16 additions and 2 deletions
  1. 16 2
      src/probestack.rs

+ 16 - 2
src/probestack.rs

@@ -75,8 +75,22 @@ macro_rules! define_rust_probestack {
     };
 }
 
-// Same as above, but for Mach-O.
-#[cfg(any(target_vendor = "apple", target_os = "uefi"))]
+#[cfg(target_os = "uefi")]
+macro_rules! define_rust_probestack {
+    ($body: expr) => {
+        concat!(
+            "
+            .globl __rust_probestack
+        __rust_probestack:
+            ",
+            $body
+        )
+    };
+}
+
+// Same as above, but for Mach-O. Note that the triple underscore
+// is deliberate
+#[cfg(target_vendor = "apple")]
 macro_rules! define_rust_probestack {
     ($body: expr) => {
         concat!(