[libc-commits] [libc] [libc][arm32] define argc type and stack alignment (PR #96367)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Mon Jun 24 09:00:23 PDT 2024


================
@@ -36,12 +36,11 @@ struct TLSImage {
 };
 
 #if defined(LIBC_TARGET_ARCH_IS_X86_64) ||                                     \
-    defined(LIBC_TARGET_ARCH_IS_AARCH64) ||                                    \
+    defined(LIBC_TARGET_ARCH_IS_ANY_ARM) ||                                    \
     defined(LIBC_TARGET_ARCH_IS_ANY_RISCV)
 // At the language level, argc is an int. But we use uint64_t as the x86_64
-// ABI specifies it as an 8 byte value. Likewise, in the ARM64 ABI, arguments
-// are usually passed in registers.  x0 is a doubleword register, so this is
-// 64 bit for aarch64 as well.
+// ABI specifies it as an 8 byte value (Figure 3.9 Initial Process Stack in
----------------
nickdesaulniers wrote:

Yeah, this whole comment block could use a refresh. Let me rewrite it.

https://github.com/llvm/llvm-project/pull/96367


More information about the libc-commits mailing list