diff options
| author | Angus Gratton <angus@redyak.com.au> | 2023-09-13 10:07:21 +1000 |
|---|---|---|
| committer | Angus Gratton <angus@redyak.com.au> | 2023-09-20 11:48:36 +1000 |
| commit | fa685239687b0ee3d34788b2edd0711e9fc6bc3c (patch) | |
| tree | f0ccfe7f62649b1b6cdb947e9baadc8c6263536d /py/asmbase.h | |
| parent | 00930b213e55f4396c1e255092f09bdb8dd8c16f (diff) | |
py/nlrx64: Mark nlr_push() as naked function when possible.
Supported from GCC 8 and up, and Compiler Explorer suggests it works as
expected with Clang since 3.6 (2014).
- Fixes situation where building embedded MicroPython with -O0 and
MICROPY_NLR_X64 crashes at runtime (due to nlr_push pushing the
frame pointer register EBP). Closes #12421.
- Allows removing the macOS tweak to undo pushing EBP onto the stack
in the generated function prelude.
Signed-off-by: Angus Gratton <angus@redyak.com.au>
Diffstat (limited to 'py/asmbase.h')
0 files changed, 0 insertions, 0 deletions
