summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorandrew <andrew@FreeBSD.org>2014-12-14 18:28:01 +0000
committerandrew <andrew@FreeBSD.org>2014-12-14 18:28:01 +0000
commitaf32fb7fcebdcf67a0a8285e258a834fb669156e (patch)
tree689659f55151ca3287b7d5a75fbbbc79d56c5bf1
parent56edfadd1e4d7a610e5dc50bc9f7d4d790158220 (diff)
downloadFreeBSD-src-af32fb7fcebdcf67a0a8285e258a834fb669156e.zip
FreeBSD-src-af32fb7fcebdcf67a0a8285e258a834fb669156e.tar.gz
MFC 275564:
Use the unified syntax when generating assembly for clang. The clang 3.5 integrated assembler only accepts it. Sponsored by: ABT Systems Ltd
-rw-r--r--sys/arm/arm/stdatomic.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/arm/arm/stdatomic.c b/sys/arm/arm/stdatomic.c
index a2db9f0..167ec7b 100644
--- a/sys/arm/arm/stdatomic.c
+++ b/sys/arm/arm/stdatomic.c
@@ -854,8 +854,13 @@ EMIT_FETCH_AND_OP_N(N, uintN_t, ldr, str, fetch_and_or, "orr") \
EMIT_FETCH_AND_OP_N(N, uintN_t, ldr, str, fetch_and_sub, "sub") \
EMIT_FETCH_AND_OP_N(N, uintN_t, ldr, str, fetch_and_xor, "eor")
+#ifdef __clang__
+EMIT_ALL_OPS_N(1, uint8_t, "ldrb", "strb", "strbeq")
+EMIT_ALL_OPS_N(2, uint16_t, "ldrh", "strh", "strheq")
+#else
EMIT_ALL_OPS_N(1, uint8_t, "ldrb", "strb", "streqb")
EMIT_ALL_OPS_N(2, uint16_t, "ldrh", "strh", "streqh")
+#endif
EMIT_ALL_OPS_N(4, uint32_t, "ldr", "str", "streq")
#ifndef __clang__
OpenPOWER on IntegriCloud