aboutsummaryrefslogtreecommitdiff
path: root/circuitpython/py/emitnarm.c
diff options
context:
space:
mode:
Diffstat (limited to 'circuitpython/py/emitnarm.c')
-rw-r--r--circuitpython/py/emitnarm.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/circuitpython/py/emitnarm.c b/circuitpython/py/emitnarm.c
new file mode 100644
index 0000000..8297ad6
--- /dev/null
+++ b/circuitpython/py/emitnarm.c
@@ -0,0 +1,20 @@
+// ARM specific stuff
+
+#include "py/mpconfig.h"
+
+#if MICROPY_EMIT_ARM
+
+// This is defined so that the assembler exports generic assembler API macros
+#define GENERIC_ASM_API (1)
+#include "py/asmarm.h"
+
+// Word indices of REG_LOCAL_x in nlr_buf_t
+#define NLR_BUF_IDX_LOCAL_1 (3) // r4
+#define NLR_BUF_IDX_LOCAL_2 (4) // r5
+#define NLR_BUF_IDX_LOCAL_3 (5) // r6
+
+#define N_ARM (1)
+#define EXPORT_FUN(name) emit_native_arm_##name
+#include "py/emitnative.c"
+
+#endif