py: Add new Xtensa-Windowed arch for native emitter.

Enabled via the configuration MICROPY_EMIT_XTENSAWIN.
This commit is contained in:
Damien George
2019-09-13 13:15:12 +10:00
parent f7ddc94166
commit 9adedce42e
11 changed files with 50 additions and 6 deletions

23
py/emitnxtensawin.c Normal file
View File

@@ -0,0 +1,23 @@
// Xtensa-Windowed specific stuff
#include "py/mpconfig.h"
#if MICROPY_EMIT_XTENSAWIN
// this is defined so that the assembler exports generic assembler API macros
#define GENERIC_ASM_API (1)
#define GENERIC_ASM_API_WIN (1)
#include "py/asmxtensa.h"
// Word indices of REG_LOCAL_x in nlr_buf_t
#define NLR_BUF_IDX_LOCAL_1 (2 + 4) // a4
#define NLR_BUF_IDX_LOCAL_2 (2 + 5) // a5
#define NLR_BUF_IDX_LOCAL_3 (2 + 6) // a6
#define N_NLR_SETJMP (1)
#define N_PRELUDE_AS_BYTES_OBJ (1)
#define N_XTENSAWIN (1)
#define EXPORT_FUN(name) emit_native_xtensawin_##name
#include "py/emitnative.c"
#endif