summaryrefslogtreecommitdiff
path: root/newlib/libc/machine/sh/asm.h
diff options
context:
space:
mode:
authorPikalaxALT <pikalaxalt@gmail.com>2017-12-15 09:38:53 -0500
committerPikalaxALT <pikalaxalt@gmail.com>2017-12-15 09:39:34 -0500
commitf95a4a932476be2ba99e2fd081e8d2bc6ea12813 (patch)
tree75f67192cb2d7b7b575c94edda318e475239b63c /newlib/libc/machine/sh/asm.h
parentf60aca96985e68c7d8a52eb7bc955fb80e132f73 (diff)
Import newlib and create makefile
Diffstat (limited to 'newlib/libc/machine/sh/asm.h')
-rw-r--r--newlib/libc/machine/sh/asm.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/newlib/libc/machine/sh/asm.h b/newlib/libc/machine/sh/asm.h
new file mode 100644
index 0000000..f99623e
--- /dev/null
+++ b/newlib/libc/machine/sh/asm.h
@@ -0,0 +1,22 @@
+#ifdef __STDC__
+# define _C_LABEL(x) _ ## x
+#else
+# define _C_LABEL(x) _/**/x
+#endif
+#define _ASM_LABEL(x) x
+
+#define _ENTRY(name) \
+ .text; .align 2; .globl name; name:
+
+#define ENTRY(name) \
+ _ENTRY(_C_LABEL(name))
+
+#if (defined (__sh2__) || defined (__sh3__) || defined (__SH3E__) \
+ || defined (__SH4__)) || defined(__SH4_SINGLE_ONLY__)
+#define DELAYED_BRANCHES
+#define SL(branch, dest, in_slot, in_slot_arg2) \
+ branch##.s dest; in_slot, in_slot_arg2
+#else
+#define SL(branch, dest, in_slot, in_slot_arg2) \
+ in_slot, in_slot_arg2; branch dest
+#endif