summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/moxie
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/moxie')
-rw-r--r--c/src/lib/libbsp/moxie/moxiesim/configure.ac13
-rw-r--r--c/src/lib/libbsp/moxie/moxiesim/start/start.S10
2 files changed, 21 insertions, 2 deletions
diff --git a/c/src/lib/libbsp/moxie/moxiesim/configure.ac b/c/src/lib/libbsp/moxie/moxiesim/configure.ac
index e073b4bbf0..ff87adda21 100644
--- a/c/src/lib/libbsp/moxie/moxiesim/configure.ac
+++ b/c/src/lib/libbsp/moxie/moxiesim/configure.ac
@@ -17,6 +17,19 @@ RTEMS_PROG_CCAS
RTEMS_BSP_CLEANUP_OPTIONS(0, 0)
+AC_MSG_CHECKING([for old moxie assembly syntax])
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM(
+ [],
+ [asm("sub.l $r0, $r0");])],
+ [HAVE_OLD_MOXIE_ASM=yes],
+ [HAVE_OLD_MOXIE_ASM=no])
+AC_MSG_RESULT([$HAVE_OLD_MOXIE_ASM])
+if test "x$HAVE_OLD_MOXIE_ASM" = xyes; then
+ AC_DEFINE(HAVE_OLD_MOXIE_ASM,
+ 1, [Define if you are using old moxie asm syntax (sub.l)])
+fi
+
# Explicitly list all Makefiles here
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
diff --git a/c/src/lib/libbsp/moxie/moxiesim/start/start.S b/c/src/lib/libbsp/moxie/moxiesim/start/start.S
index 6b44a247dc..ae712cb3e4 100644
--- a/c/src/lib/libbsp/moxie/moxiesim/start/start.S
+++ b/c/src/lib/libbsp/moxie/moxiesim/start/start.S
@@ -1,7 +1,13 @@
-/* Copyright (C) 2011, 2013 Anthony Green */
+/* Copyright (C) 2011, 2013, 2014 Anthony Green */
/* moxie start up file. */
+#include "bspopts.h"
+
+#if defined(HAVE_OLD_MOXIE_ASM)
+#define sub sub.l
+#endif
+
.text
.global _start
_start:
@@ -12,7 +18,7 @@ _start:
ldi.l $r0, __bss_start__
xor $r1, $r1
ldi.l $r2, __bss_end__
- sub.l $r2, $r0
+ sub $r2, $r0
jsra memset
ldi.l $r0, 0x0 # pass in NULL