[libc-commits] [PATCH] D116949: [libc] Add linux aarch64 syscall implementation.

Siva Chandra via Phabricator via libc-commits libc-commits at lists.llvm.org
Mon Jan 10 09:34:01 PST 2022


sivachandra added inline comments.


================
Comment at: libc/src/__support/OSUtil/linux/aarch64/syscall.h:15
+#define REGISTER_DECL_0                                                        \
+  register long x8 __asm__("x8") = number;                                     \
+  register long x0 __asm__("x0");
----------------
abrachet wrote:
> I think `register` is (or soon to be) deprecated and reserved, and my understanding is that most compilers completely ignore it anyway. Should it be omitted here?
Oh, I didn't know that. But, when I try, I get warnings like this:

```
warning: ignored asm label 'r10' on automatic variable
  long r10 __asm__("r10") = 123;
```

The allocation is not in the register and the syscalls end up with wrong number of args.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D116949/new/

https://reviews.llvm.org/D116949



More information about the libc-commits mailing list