[rtems commit] Add __synch_synchronize function for arm
Joel Sherril
joel at rtems.org
Sat Aug 1 17:20:22 UTC 2015
Module: rtems
Branch: 4.11
Commit: 1cf91e0b0a6e93a5344a9b4fc6c09f44ff95d1e2
Changeset: http://git.rtems.org/rtems/commit/?id=1cf91e0b0a6e93a5344a9b4fc6c09f44ff95d1e2
Author: Jan Sommer <summerspam at web.de>
Date: Sat Aug 1 05:43:12 2015 -0500
Add __synch_synchronize function for arm
Fixes link failure when linking Ada programs on the raspberry pi
---
cpukit/score/cpu/arm/Makefile.am | 1 +
cpukit/score/cpu/arm/armv4-sync-synchronize.c | 9 +++++++++
2 files changed, 10 insertions(+)
diff --git a/cpukit/score/cpu/arm/Makefile.am b/cpukit/score/cpu/arm/Makefile.am
index c051a48..4b242f0 100644
--- a/cpukit/score/cpu/arm/Makefile.am
+++ b/cpukit/score/cpu/arm/Makefile.am
@@ -27,6 +27,7 @@ libscorecpu_a_SOURCES += arm_exc_handler_high.c
libscorecpu_a_SOURCES += arm-exception-frame-print.c
libscorecpu_a_SOURCES += arm-exception-default.c
libscorecpu_a_SOURCES += armv4-exception-default.S
+libscorecpu_a_SOURCES += armv4-sync-synchronize.c
libscorecpu_a_SOURCES += armv7-thread-idle.c
libscorecpu_a_SOURCES += armv7m-context-initialize.c
libscorecpu_a_SOURCES += armv7m-context-restore.c
diff --git a/cpukit/score/cpu/arm/armv4-sync-synchronize.c b/cpukit/score/cpu/arm/armv4-sync-synchronize.c
new file mode 100644
index 0000000..6fcac05
--- /dev/null
+++ b/cpukit/score/cpu/arm/armv4-sync-synchronize.c
@@ -0,0 +1,9 @@
+void
+__sync_synchronize (void)
+{
+#ifdef ARM_MULTILIB_HAS_BARRIER_INSTRUCTIONS
+ asm volatile("dmb" : : : "memory");
+#else
+ asm volatile("" : : : "memory");
+#endif
+}
\ No newline at end of file
More information about the vc
mailing list