diff options
author | joerg <joerg@pkgsrc.org> | 2015-04-21 17:20:39 +0000 |
---|---|---|
committer | joerg <joerg@pkgsrc.org> | 2015-04-21 17:20:39 +0000 |
commit | b4821a3a3e7f6f838491c90d37695ea068f99c92 (patch) | |
tree | 206ba7512bcbe4f1eccf7b76b56372dbb8b43bff /emulators/mame | |
parent | 8fc91ff4e7afa75cc6d58fdf88539178c89bed18 (diff) | |
download | pkgsrc-b4821a3a3e7f6f838491c90d37695ea068f99c92.tar.gz |
Support ARM.
Diffstat (limited to 'emulators/mame')
-rw-r--r-- | emulators/mame/distinfo | 3 | ||||
-rw-r--r-- | emulators/mame/patches/patch-src_osd_sdl_osinline.h | 34 |
2 files changed, 36 insertions, 1 deletions
diff --git a/emulators/mame/distinfo b/emulators/mame/distinfo index 19ef077d5f3..c0224da4196 100644 --- a/emulators/mame/distinfo +++ b/emulators/mame/distinfo @@ -1,6 +1,7 @@ -$NetBSD: distinfo,v 1.34 2015/04/02 22:33:55 wiz Exp $ +$NetBSD: distinfo,v 1.35 2015/04/21 17:20:39 joerg Exp $ SHA1 (mame0160s.zip) = db3d2f10a5c9ef00f629bfd8ab5665874ef581c2 RMD160 (mame0160s.zip) = 95a0edb499dc81a690ca13040954c87f586ec673 Size (mame0160s.zip) = 80937878 bytes SHA1 (patch-makefile) = 57837dbc8571682e4fd73a2be5771df109c7225f +SHA1 (patch-src_osd_sdl_osinline.h) = f710a75a51b603905913f2b282c2fc8b92066466 diff --git a/emulators/mame/patches/patch-src_osd_sdl_osinline.h b/emulators/mame/patches/patch-src_osd_sdl_osinline.h new file mode 100644 index 00000000000..6d5ee6c485c --- /dev/null +++ b/emulators/mame/patches/patch-src_osd_sdl_osinline.h @@ -0,0 +1,34 @@ +$NetBSD: patch-src_osd_sdl_osinline.h,v 1.1 2015/04/21 17:20:39 joerg Exp $ + +--- src/osd/sdl/osinline.h.orig 2015-04-17 15:09:28.000000000 +0000 ++++ src/osd/sdl/osinline.h +@@ -83,6 +83,29 @@ _osd_exchange64(INT64 volatile *ptr, INT + + #endif /* __ppc64__ || __PPC64__ */ + ++#elif defined(__arm__) ++INLINE void ATTR_FORCE_INLINE ++osd_yield_processor(void) ++{ ++} ++ ++INLINE INT32 ATTR_UNUSED ATTR_NONNULL(1) ATTR_FORCE_INLINE ++_osd_exchange32(INT32 volatile *ptr, INT32 exchange) ++{ ++ INT32 before; ++ do { ++ before = *ptr; ++ } while (!__sync_bool_compare_and_swap(ptr, before, exchange)); ++ return before; ++} ++ ++INLINE int ATTR_UNUSED ATTR_NONNULL(1) ATTR_FORCE_INLINE ++_osd_compare_exchange32(INT32 volatile *ptr, INT32 before, INT32 after) ++{ ++ return __sync_bool_compare_and_swap(ptr, before, after); ++} ++#define osd_exchange32 _osd_exchange32 ++#define osd_compare_exchange32 _osd_compare_exchange32 + #else + + #error "no matching assembler implementations found - please compile with NOASM=1" |