diff -urN a/src/include/thread.h b/src/include/thread.h --- a/src/include/thread.h 2013-04-12 21:30:27.000000000 -0500 +++ b/src/include/thread.h 2013-05-21 15:15:04.021631910 -0500 @@ -338,7 +338,11 @@ __TBB_Pause(delay); #elif defined(__GNUC__) for (int i = 0; i < delay; ++i) { +#if defined __arm__ + __asm__ __volatile__("NOP;"); +#else __asm__ __volatile__("pause;"); +#endif } #elif defined(_MSC_VER) for (int i = 0; i < delay; ++i) { @@ -453,7 +457,12 @@ // Disallow copy construction by making private and unimplemented. atomic (atomic const &); + +#if defined __arm__ +} __attribute__((aligned(8))); +#else }; +#endif #endif /* ! USE_TBB */