Use munaligned-access to control if we can have unaligned accesses. For ARC
HS family unaligned access is always on.
2018-01-08 Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc-c.def (__ARC_UNALIGNED__): New define.
* config/arc/arc.h (STRICT_ALIGNMENT): Control this macro using
munaligned-access.
From-SVN: r256333
+2018-01-08 Claudiu Zissulescu <claziss@synopsys.com>
+
+ * config/arc/arc-c.def (__ARC_UNALIGNED__): New define.
+ * config/arc/arc.h (STRICT_ALIGNMENT): Control this macro using
+ munaligned-access.
+
2018-01-08 Sebastian Huber <sebastian.huber@embedded-brains.de>
PR target/83681
ARC_C_DEF ("__ARC_MUL64__", TARGET_MUL64_SET)
ARC_C_DEF ("__ARC_MUL32BY16__", TARGET_MULMAC_32BY16_SET)
ARC_C_DEF ("__ARC_SIMD__", TARGET_SIMD_SET)
+ARC_C_DEF ("__ARC_UNALIGNED__", !STRICT_ALIGNMENT)
ARC_C_DEF ("__ARC_BARREL_SHIFTER__", TARGET_BARREL_SHIFTER)
/* On the ARC the lower address bits are masked to 0 as necessary. The chip
won't croak when given an unaligned address, but the insn will still fail
to produce the correct result. */
-#define STRICT_ALIGNMENT 1
+#define STRICT_ALIGNMENT (!unaligned_access && !TARGET_HS)
/* Layout of source language data types. */