py: Add guarded includes for asm-based headers.
diff --git a/py/asmarm.h b/py/asmarm.h
index 378b676..c9819cd 100644
--- a/py/asmarm.h
+++ b/py/asmarm.h
@@ -24,6 +24,10 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+#ifndef __MICROPY_INCLUDED_PY_ASMARM_H__
+#define __MICROPY_INCLUDED_PY_ASMARM_H__
+
+#include "py/misc.h"
 
 #define ASM_ARM_PASS_COMPUTE (1)
 #define ASM_ARM_PASS_EMIT    (2)
@@ -120,3 +124,4 @@
 void asm_arm_b_label(asm_arm_t *as, uint label);
 void asm_arm_bl_ind(asm_arm_t *as, void *fun_ptr, uint fun_id, uint reg_temp);
 
+#endif // __MICROPY_INCLUDED_PY_ASMARM_H__
diff --git a/py/asmthumb.h b/py/asmthumb.h
index beb1250..93cad09 100644
--- a/py/asmthumb.h
+++ b/py/asmthumb.h
@@ -23,6 +23,10 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+#ifndef __MICROPY_INCLUDED_PY_ASMTHUMB_H__
+#define __MICROPY_INCLUDED_PY_ASMTHUMB_H__
+
+#include "py/misc.h"
 
 #define ASM_THUMB_PASS_COMPUTE (1)
 #define ASM_THUMB_PASS_EMIT    (2)
@@ -200,3 +204,5 @@
 void asm_thumb_b_label(asm_thumb_t *as, uint label); // convenience ?
 void asm_thumb_bcc_label(asm_thumb_t *as, int cc, uint label); // convenience: picks narrow or wide branch
 void asm_thumb_bl_ind(asm_thumb_t *as, void *fun_ptr, uint fun_id, uint reg_temp); // convenience ?
+
+#endif // __MICROPY_INCLUDED_PY_ASMTHUMB_H__
diff --git a/py/asmx64.h b/py/asmx64.h
index 656aff6..f3f7ec1 100644
--- a/py/asmx64.h
+++ b/py/asmx64.h
@@ -23,6 +23,11 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+#ifndef __MICROPY_INCLUDED_PY_ASMX64_H__
+#define __MICROPY_INCLUDED_PY_ASMX64_H__
+
+#include "py/mpconfig.h"
+#include "py/misc.h"
 
 // AMD64 calling convention is:
 //  - args pass in: RDI, RSI, RDX, RCX, R08, R09
@@ -108,3 +113,5 @@
 void asm_x64_mov_r64_to_local(asm_x64_t* as, int src_r64, int dest_local_num);
 void asm_x64_mov_local_addr_to_r64(asm_x64_t* as, int local_num, int dest_r64);
 void asm_x64_call_ind(asm_x64_t* as, void* ptr, int temp_r32);
+
+#endif // __MICROPY_INCLUDED_PY_ASMX64_H__
diff --git a/py/asmx86.h b/py/asmx86.h
index 68c6f82..544786c 100644
--- a/py/asmx86.h
+++ b/py/asmx86.h
@@ -23,6 +23,11 @@
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
  * THE SOFTWARE.
  */
+#ifndef __MICROPY_INCLUDED_PY_ASMX86_H__
+#define __MICROPY_INCLUDED_PY_ASMX86_H__
+
+#include "py/mpconfig.h"
+#include "py/misc.h"
 
 // x86 cdecl calling convention is:
 //  - args passed on the stack in reverse order
@@ -106,3 +111,5 @@
 void asm_x86_mov_r32_to_local(asm_x86_t* as, int src_r32, int dest_local_num);
 void asm_x86_mov_local_addr_to_r32(asm_x86_t* as, int local_num, int dest_r32);
 void asm_x86_call_ind(asm_x86_t* as, void* ptr, mp_uint_t n_args, int temp_r32);
+
+#endif // __MICROPY_INCLUDED_PY_ASMX86_H__