You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
| All |`sp`, `r15` (s390x) | The stack pointer must be restored to its original value at the end of an asm code block. |
148
-
| All |`fr` (Hexagon), `$fp` (MIPS), `Y` (AVR), `r4` (MSP430), `a6` (M68k), `r11` (s390x), `x29` (Arm64EC) | The frame pointer cannot be used as an input or output. |
154
+
| All |`fr` (Hexagon), `fp` (PowerPC), `$fp` (MIPS), `Y` (AVR), `r4` (MSP430), `a6` (M68k), `r11` (s390x), `x29` (Arm64EC) | The frame pointer cannot be used as an input or output. |
149
155
| All |`r19` (Hexagon), `x19` (Arm64EC) | This is used internally by LLVM as a "base pointer" for functions with complex stack frames. |
150
156
| MIPS |`$0` or `$zero`| This is a constant zero register which can't be modified. |
| MIPS |`$28`/`$gp`| Global pointer cannot be used as inputs or outputs. |
154
160
| MIPS |`$ra`| Return address cannot be used as inputs or outputs. |
155
161
| Hexagon |`lr`| This is the link register which cannot be used as an input or output. |
162
+
| PowerPC |`$r2`, `$r13`| These are system reserved registers. |
163
+
| PowerPC |`$r29`, `$r30`| These are used internally by LLVM. |
164
+
| PowerPC |`lr`| The link register cannot be used as an input or output. |
165
+
| PowerPC |`ctr`| The counter register cannot be used as an input or output. |
166
+
| PowerPC |`vrsave`| The vrsave register cannot be used as an input or output. |
156
167
| AVR |`r0`, `r1`, `r1r0`| Due to an issue in LLVM, the `r0` and `r1` registers cannot be used as inputs or outputs. If modified, they must be restored to their original values before the end of the block. |
157
168
|MSP430 |`r0`, `r2`, `r3`| These are the program counter, status register, and constant generator respectively. Neither the status register nor constant generator can be written to. |
158
169
| M68k |`a4`, `a5`| Used internally by LLVM for the base pointer and global base pointer. |
0 commit comments