aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/mips/mips.h
diff options
context:
space:
mode:
authorYunQiang Su <syq@gcc.gnu.org>2024-03-20 16:25:04 +0800
committerYunQiang Su <syq@gcc.gnu.org>2024-03-26 10:21:51 +0800
commitbb819067b3037dbc847aef6c46b8dc6cd5b50962 (patch)
tree3641e38ad216ae06e3a89819365aeb413dbca381 /gcc/config/mips/mips.h
parent7e6cdec4d3e40c6f29b9198f26d724a3ac6d1555 (diff)
downloadgcc-bb819067b3037dbc847aef6c46b8dc6cd5b50962.zip
gcc-bb819067b3037dbc847aef6c46b8dc6cd5b50962.tar.gz
gcc-bb819067b3037dbc847aef6c46b8dc6cd5b50962.tar.bz2
MIPS: Predefine __mips_strict_alignment if STRICT_ALIGNMENT
Arm32 predefines __ARM_FEATURE_UNALIGNED if -mno-unaligned-access, and RISC-V predefines __riscv_misaligned_avoid. Let's define __mips_strict_alignment for MIPSr6 and -mstrict-align is used. Note that, this macro is always defined for pre-R6. gcc * config/mips/mips.h (TARGET_CPU_CPP_BUILTINS): Predefine __mips_strict_alignment if STRICT_ALIGNMENT.
Diffstat (limited to 'gcc/config/mips/mips.h')
-rw-r--r--gcc/config/mips/mips.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/config/mips/mips.h b/gcc/config/mips/mips.h
index 6444a68..616a275 100644
--- a/gcc/config/mips/mips.h
+++ b/gcc/config/mips/mips.h
@@ -694,6 +694,9 @@ struct mips_cpu_info {
builtin_define ("__mips_compact_branches_always"); \
else \
builtin_define ("__mips_compact_branches_optimal"); \
+ \
+ if (STRICT_ALIGNMENT) \
+ builtin_define ("__mips_strict_alignment"); \
} \
while (0)