diff options
author | Stephen Blackheath <effusively.proffer.stephen@blacksapphire.com> | 2011-07-26 10:35:17 +0000 |
---|---|---|
committer | Manuel M T Chakravarty <chak@cse.unsw.edu.au> | 2011-08-10 22:03:41 +1000 |
commit | f7a70506bc252d72628ea81faa20df8030923790 (patch) | |
tree | 2adbba23026b4d392d53e116d1c99c1c75a69032 /rts/OldARMAtomic.c | |
parent | 5cf87b43993f5fd2884755cd16268c2f40572026 (diff) | |
download | haskell-f7a70506bc252d72628ea81faa20df8030923790.tar.gz |
ARMv5 compatibility for registerized runtime changes.
When the bootstrap compiler does not include this patch, you must add this line
to mk/build.mk, otherwise the ARM architecture cannot be detected due to a
-undef option given to the C pre-processor.
SRC_HC_OPTS = -pgmP 'gcc -E -traditional'
Diffstat (limited to 'rts/OldARMAtomic.c')
-rw-r--r-- | rts/OldARMAtomic.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/rts/OldARMAtomic.c b/rts/OldARMAtomic.c index 2a3c6c6655..5c51cc08bb 100644 --- a/rts/OldARMAtomic.c +++ b/rts/OldARMAtomic.c @@ -1,3 +1,12 @@ +/* ----------------------------------------------------------------------------- + * + * (c) The GHC Team, 2011 + * + * Inefficient but necessary atomic locks used for implementing atomic + * operations on ARM architectures pre-ARMv6. + * + * -------------------------------------------------------------------------- */ + #include "PosixSource.h" #include "Stg.h" @@ -7,7 +16,7 @@ #if defined(THREADED_RTS) -#if arm_HOST_ARCH && defined(PRE_ARMv6) +#if arm_HOST_ARCH && defined(arm_HOST_ARCH_PRE_ARMv6) static volatile int atomic_spin = 0; @@ -41,7 +50,7 @@ void arm_atomic_spin_unlock() atomic_spin = 0; } -#endif /* arm_HOST_ARCH && defined(PRE_ARMv6) */ +#endif /* arm_HOST_ARCH && defined(arm_HOST_ARCH_PRE_ARMv6) */ #endif /* defined(THREADED_RTS) */ |