|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual | | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual | | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See Page A8-316 of the ARMv7 Architecture Reference Manual | | | See Page A8-316 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See Page A8-808 of the ARMv7 Architecture Reference Manual | | | See Page A8-808 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual | | | See Standby mode on page A8-810 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page A8-90 of the ARMv7 Architecture Reference Manual | | | See page A8-90 of the ARMv7 Architecture Reference Manual |
| | Note that this is also available in the FPC RTL as ReadBarrier/WriteBarrier See: \source\rtl\arm\arm.inc | | Note that this is also available in the FPC RTL as ReadBarrier/WriteBarrier See: \source\rtl\arm\arm.inc |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page A8-92 of the ARMv7 Architecture Reference Manual | | | See page A8-92 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page A8-102 of the ARMv7 Architecture Reference Manual | | | See page A8-102 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-138 of the ARMv7 Architecture Reference Manual | | | See page B3-138 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-138 of the ARMv7 Architecture Reference Manual | | | See page B3-138 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-138 of the ARMv7 Architecture Reference Manual | | | See page B3-138 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''SetWay''' | + | ! SetWay |
| | | Set/Way/Level will be passed in r0 | | | Set/Way/Level will be passed in r0 |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''SetWay''' | + | ! SetWay |
| | | Set/Way/Level will be passed in r0 | | | Set/Way/Level will be passed in r0 |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''SetWay''' | + | ! SetWay |
| | | Set/Way/Level will be passed in r0 | | | Set/Way/Level will be passed in r0 |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page A8-102 of the ARMv7 Architecture Reference Manual | | | See page A8-102 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page B3-127 of the ARMv7 Architecture Reference Manual | | | See page B3-127 of the ARMv7 Architecture Reference Manual |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''OldStack''' | + | ! OldStack |
| | | The address to save the stack pointer to for the current thread (Passed in r0) | | | The address to save the stack pointer to for the current thread (Passed in r0) |
| | |- | | |- |
| − | ! '''NewStack''' | + | ! NewStack |
| | | The address to restore the stack pointer from for the new thread (Passed in r1) | | | The address to restore the stack pointer from for the new thread (Passed in r1) |
| | |- | | |- |
| − | ! '''NewThread''' | + | ! NewThread |
| | | The handle of the new thread to switch to (Passed in r2) | | | The handle of the new thread to switch to (Passed in r2) |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: | | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: |
| | <br />(See: ARMv8ThreadSetupStack for additional information) | | <br />(See: ARMv8ThreadSetupStack for additional information) |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''OldStack''' | + | ! OldStack |
| | | The address to save the stack pointer to for the current thread (Passed in r0) | | | The address to save the stack pointer to for the current thread (Passed in r0) |
| | |- | | |- |
| − | ! '''NewStack''' | + | ! NewStack |
| | | The address to restore the stack pointer from for the new thread (Passed in r1) | | | The address to restore the stack pointer from for the new thread (Passed in r1) |
| | |- | | |- |
| − | ! '''NewThread''' | + | ! NewThread |
| | | The handle of the new thread to switch to (Passed in r2) | | | The handle of the new thread to switch to (Passed in r2) |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: | | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: |
| | <br />(See: ARMv8ThreadSetupStack for additional information) | | <br />(See: ARMv8ThreadSetupStack for additional information) |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''OldStack''' | + | ! OldStack |
| | | The address to save the stack pointer to for the current thread (Passed in r0) | | | The address to save the stack pointer to for the current thread (Passed in r0) |
| | |- | | |- |
| − | ! '''NewStack''' | + | ! NewStack |
| | | The address to restore the stack pointer from for the new thread (Passed in r1) | | | The address to restore the stack pointer from for the new thread (Passed in r1) |
| | |- | | |- |
| − | ! '''NewThread''' | + | ! NewThread |
| | | The handle of the new thread to switch to (Passed in r2) | | | The handle of the new thread to switch to (Passed in r2) |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: | | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: |
| | <br />(See: ARMv8ThreadSetupStack for additional information) | | <br />(See: ARMv8ThreadSetupStack for additional information) |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''OldStack''' | + | ! OldStack |
| | | The address to save the stack pointer to for the current thread (Passed in r0) | | | The address to save the stack pointer to for the current thread (Passed in r0) |
| | |- | | |- |
| − | ! '''NewStack''' | + | ! NewStack |
| | | The address to restore the stack pointer from for the new thread (Passed in r1) | | | The address to restore the stack pointer from for the new thread (Passed in r1) |
| | |- | | |- |
| − | ! '''NewThread''' | + | ! NewThread |
| | | The handle of the new thread to switch to (Passed in r2) | | | The handle of the new thread to switch to (Passed in r2) |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: | | | At the point of the actual context switch (str sp/ldr sp) the thread stacks will look like this: |
| | <br />(See: ARMv8ThreadSetupStack for additional information) | | <br />(See: ARMv8ThreadSetupStack for additional information) |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | See page ??? | | | See page ??? |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| − | | ARM arm states that CLZ is supported for ARMv5 and above | + | | ARM states that CLZ is supported for ARMv5 and above |
| | |- | | |- |
| | |} | | |} |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| − | | ARM arm states that CLZ is supported for ARMv5 and above | + | | ARM states that CLZ is supported for ARMv5 and above |
| | |- | | |- |
| | |} | | |} |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Spin''' | + | ! Spin |
| | | Pointer to the Spin entry to lock (Passed in R0) | | | Pointer to the Spin entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| − | | True if the mask would enable IRQ on restore, False if it would not | + | | True if the mask would enable IRQ on restore, False if it would not. |
| | |- | | |- |
| | |} | | |} |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| − | | True if the mask would enable FIQ on restore, False if it would not | + | | True if the mask would enable FIQ on restore, False if it would not. |
| | |- | | |- |
| | |} | | |} |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Note''' | + | ! Note |
| | | None documented | | | None documented |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Mutex''' | + | ! Mutex |
| | | Pointer to the Mutex entry to lock (Passed in R0) | | | Pointer to the Mutex entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Mutex''' | + | ! Mutex |
| | | Pointer to the Mutex entry to lock (Passed in R0) | | | Pointer to the Mutex entry to lock (Passed in R0) |
| | |- | | |- |
| − | ! '''Return''' | + | ! Return |
| | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) | | | ERROR_SUCCESS if completed or another error code on failure (Returned in R0) |
| | |- | | |- |
|
|
| | {| class="wikitable" style="font-size: 14px; background: white;" | | {| class="wikitable" style="font-size: 14px; background: white;" |
| | |- | | |- |
| − | ! '''Mutex''' | + | ! Mutex |
| | | Pointer to the Mutex entry to try to lock (Passed in R0) | | | Pointer to the Mutex entry to try to lock (Passed in R0) |
| | |- | | |- |
Exception encountered, of type "Error"