From a8f9f642744d3126caa8aff4eb00386f6893bba1 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Thu, 11 Jan 2024 09:41:17 -0700 Subject: [PATCH] Fix stack_chk_guard size on 32-bit --- src/header/stdlib/cbindgen.toml | 3 +++ src/header/stdlib/mod.rs | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/header/stdlib/cbindgen.toml b/src/header/stdlib/cbindgen.toml index 6de6a6fa4b..fb6dde8a17 100644 --- a/src/header/stdlib/cbindgen.toml +++ b/src/header/stdlib/cbindgen.toml @@ -6,6 +6,9 @@ style = "Type" no_includes = true cpp_compat = true +[defines] +"target_pointer_width=64" = "__LP64__" + [enum] prefix_with_name = true diff --git a/src/header/stdlib/mod.rs b/src/header/stdlib/mod.rs index 74d37af0a1..64ca259a87 100644 --- a/src/header/stdlib/mod.rs +++ b/src/header/stdlib/mod.rs @@ -100,6 +100,11 @@ pub unsafe extern "C" fn abort() -> ! { intrinsics::abort(); } +#[cfg(not(target_pointer_width = "64"))] +#[no_mangle] +static __stack_chk_guard: uintptr_t = 0x19fcadfe; + +#[cfg(target_pointer_width = "64")] #[no_mangle] static __stack_chk_guard: uintptr_t = 0xd048c37519fcadfe;