Skip to content

Commit 36a9e24

Browse files
committed
Build AArch32 base variants with strict alignment
This patch adds `-mno-unaligned-access` to the compile flags of the AArch32 base variants. Base variants are the set of libraries that provide the most compatible functionality. As a consequence, they are built with strict alignment in order to work nicely with client code that is compiled with or without strict alignment. The libraries for Armv7-a soft already had a variant with and without strict alignment. Hence now just one remains, the one with strict alignment.
1 parent 4e1a0e1 commit 36a9e24

26 files changed

+30
-122
lines changed

arm-multilib/json/multilib.json

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -94,16 +94,6 @@
9494
"json": "armv7a_soft_nofp.json",
9595
"flags": "--target=armv7-unknown-none-eabi -mfpu=none -fno-exceptions -fno-rtti"
9696
},
97-
{
98-
"variant": "armv7a_soft_nofp_strictalign_exn_rtti",
99-
"json": "armv7a_soft_nofp_strictalign_exn_rtti.json",
100-
"flags": "--target=armv7-unknown-none-eabi -mfpu=none -mno-unaligned-access"
101-
},
102-
{
103-
"variant": "armv7a_soft_nofp_strictalign",
104-
"json": "armv7a_soft_nofp_strictalign.json",
105-
"flags": "--target=armv7-unknown-none-eabi -mfpu=none -mno-unaligned-access -fno-exceptions -fno-rtti"
106-
},
10797
{
10898
"variant": "armv7a_hard_vfpv3_d16_exn_rtti",
10999
"json": "armv7a_hard_vfpv3_d16_exn_rtti.json",

arm-multilib/json/variants/armv6m_soft_nofp.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv6m",
55
"VARIANT": "armv6m_soft_nofp",
6-
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv6m -mfpu=none",
6+
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv6m -mfpu=none -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "OFF",
88
"ENABLE_RTTI": "OFF",
99
"TEST_EXECUTOR": "qemu",

arm-multilib/json/variants/armv6m_soft_nofp_exn_rtti.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv6m",
55
"VARIANT": "armv6m_soft_nofp_exn_rtti",
6-
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv6m -mfpu=none",
6+
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv6m -mfpu=none -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "ON",
88
"ENABLE_RTTI": "ON",
99
"TEST_EXECUTOR": "qemu",

arm-multilib/json/variants/armv7a_hard_vfpv3_d16.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv7a",
55
"VARIANT": "armv7a_hard_vfpv3_d16",
6-
"COMPILE_FLAGS": "-mfloat-abi=hard -march=armv7a -mfpu=vfpv3-d16",
6+
"COMPILE_FLAGS": "-mfloat-abi=hard -march=armv7a -mfpu=vfpv3-d16 -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "OFF",
88
"ENABLE_RTTI": "OFF",
99
"TEST_EXECUTOR": "qemu",
@@ -38,4 +38,4 @@
3838
"ENABLE_LIBCXX_TESTS": "OFF"
3939
}
4040
}
41-
}
41+
}

arm-multilib/json/variants/armv7a_hard_vfpv3_d16_exn_rtti.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv7a",
55
"VARIANT": "armv7a_hard_vfpv3_d16_exn_rtti",
6-
"COMPILE_FLAGS": "-mfloat-abi=hard -march=armv7a -mfpu=vfpv3-d16",
6+
"COMPILE_FLAGS": "-mfloat-abi=hard -march=armv7a -mfpu=vfpv3-d16 -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "ON",
88
"ENABLE_RTTI": "ON",
99
"TEST_EXECUTOR": "qemu",
@@ -38,4 +38,4 @@
3838
"ENABLE_LIBCXX_TESTS": "OFF"
3939
}
4040
}
41-
}
41+
}

arm-multilib/json/variants/armv7a_soft_nofp.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv7a",
55
"VARIANT": "armv7a_soft_nofp",
6-
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv7a -mfpu=none",
6+
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv7a -mfpu=none -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "OFF",
88
"ENABLE_RTTI": "OFF",
99
"TEST_EXECUTOR": "qemu",
@@ -38,4 +38,4 @@
3838
"ENABLE_LIBCXX_TESTS": "OFF"
3939
}
4040
}
41-
}
41+
}

arm-multilib/json/variants/armv7a_soft_nofp_exn_rtti.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv7a",
55
"VARIANT": "armv7a_soft_nofp_exn_rtti",
6-
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv7a -mfpu=none",
6+
"COMPILE_FLAGS": "-mfloat-abi=soft -march=armv7a -mfpu=none -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "ON",
88
"ENABLE_RTTI": "ON",
99
"TEST_EXECUTOR": "qemu",
@@ -38,4 +38,4 @@
3838
"ENABLE_LIBCXX_TESTS": "OFF"
3939
}
4040
}
41-
}
41+
}

arm-multilib/json/variants/armv7a_soft_nofp_strictalign.json

Lines changed: 0 additions & 41 deletions
This file was deleted.

arm-multilib/json/variants/armv7a_soft_nofp_strictalign_exn_rtti.json

Lines changed: 0 additions & 41 deletions
This file was deleted.

arm-multilib/json/variants/armv7a_soft_vfpv3_d16.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"common": {
44
"TARGET_ARCH": "armv7a",
55
"VARIANT": "armv7a_soft_vfpv3_d16",
6-
"COMPILE_FLAGS": "-mfloat-abi=softfp -march=armv7a -mfpu=vfpv3-d16",
6+
"COMPILE_FLAGS": "-mfloat-abi=softfp -march=armv7a -mfpu=vfpv3-d16 -mno-unaligned-access",
77
"ENABLE_EXCEPTIONS": "OFF",
88
"ENABLE_RTTI": "OFF",
99
"TEST_EXECUTOR": "qemu",

0 commit comments

Comments
 (0)