[gccrs COMMIT] gccrs: Add `unadjusted` and `platform-intrinsic` basic ABI support

gerris.rs@gmail.com gerris.rs@gmail.com
Wed Aug 19 23:11:47 GMT 2026


From: Yap Zhi Heng <yapzhhg@gmail.com>

gcc/rust/ChangeLog:

	* util/rust-abi.h (ABI): Add PLATFORM_INTRINSIC and UNADJUSTED variants.
	* util/rust-abi.cc (ABI::get_abi_from_string): Implement cases for PLATFORM_INTRINSIC &
	UNADJUSTED.
	(ABI::get_string_from_abi): Ditto.

Signed-off-by: Yap Zhi Heng <yapzhhg@gmail.com>
---
This change was merged into the gccrs repository and is posted here for
upstream visibility and potential drive-by review, as requested by GCC
release managers.
Each commit email contains a link to its details on github from where you can
find the Pull-Request and associated discussions.


Commit on github: https://github.com/Rust-GCC/gccrs/commit/c869502a07460670a86f5e61c7c28672f1bdfdaa

The commit has NOT been mentioned in any issue.

The commit has been mentioned in the following pull-request(s):
 - https://github.com/Rust-GCC/gccrs/pull/4802

 gcc/rust/util/rust-abi.cc | 8 ++++++++
 gcc/rust/util/rust-abi.h  | 4 +++-
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/gcc/rust/util/rust-abi.cc b/gcc/rust/util/rust-abi.cc
index d17402e16..0a2f9efe4 100644
--- a/gcc/rust/util/rust-abi.cc
+++ b/gcc/rust/util/rust-abi.cc
@@ -41,6 +41,10 @@ get_abi_from_string (const std::string &abi)
     return Rust::ABI::SYSV64;
   else if (abi.compare ("win64") == 0)
     return Rust::ABI::WIN_64;
+  else if (abi.compare ("platform-intrinsic") == 0)
+    return Rust::ABI::PLATFORM_INTRINSIC;
+  else if (abi.compare ("unadjusted") == 0)
+    return Rust::ABI::UNADJUSTED;
 
   return Rust::ABI::UNKNOWN;
 }
@@ -66,6 +70,10 @@ get_string_from_abi (Rust::ABI abi)
       return "sysv64";
     case Rust::ABI::WIN_64:
       return "win64";
+    case Rust::ABI::PLATFORM_INTRINSIC:
+      return "platform-intrinsic";
+    case Rust::ABI::UNADJUSTED:
+      return "unadjusted";
 
     case Rust::ABI::UNKNOWN:
       return "unknown";
diff --git a/gcc/rust/util/rust-abi.h b/gcc/rust/util/rust-abi.h
index 357a5db95..2168a1a9e 100644
--- a/gcc/rust/util/rust-abi.h
+++ b/gcc/rust/util/rust-abi.h
@@ -31,7 +31,9 @@ enum ABI
   STDCALL,
   FASTCALL,
   WIN_64,
-  SYSV64
+  SYSV64,
+  PLATFORM_INTRINSIC,
+  UNADJUSTED,
 };
 
 extern Rust::ABI get_abi_from_string (const std::string &abi);

base-commit: 33a3c02c4be7607644535a4bdd34c154ecb8f61a
-- 
2.55.0



More information about the Gcc-rust mailing list