From: Andrew Waterman Date: Sun, 5 Nov 2017 00:39:01 +0000 (+0000) Subject: RISC-V: If -m[no-]strict-align is not passed, assume its value from -mtune X-Git-Tag: basepoints/gcc-9~3645 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=caf1c1cd1253a847644744e3d6df3f98051ef024;p=thirdparty%2Fgcc.git RISC-V: If -m[no-]strict-align is not passed, assume its value from -mtune 2017-11-04 Andrew Waterman * config/riscv/riscv.c (riscv_option_override): Conditionally set TARGET_STRICT_ALIGN based upon -mtune argument. From-SVN: r254417 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 285ac2014df8..09b0cd7ca03f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-11-04 Andrew Waterman + + * config/riscv/riscv.c (riscv_option_override): Conditionally set + TARGET_STRICT_ALIGN based upon -mtune argument. + 2017-11-04 Andrew Waterman * config/riscv/riscv.h (SLOW_BYTE_ACCESS): Change to 1. diff --git a/gcc/config/riscv/riscv.c b/gcc/config/riscv/riscv.c index b81a2d29fbfd..52bbc25d0cce 100644 --- a/gcc/config/riscv/riscv.c +++ b/gcc/config/riscv/riscv.c @@ -3772,9 +3772,13 @@ riscv_option_override (void) /* Use -mtune's setting for slow_unaligned_access, even when optimizing for size. For architectures that trap and emulate unaligned accesses, - the performance cost is too great, even for -Os. */ + the performance cost is too great, even for -Os. Similarly, if + -m[no-]strict-align is left unspecified, heed -mtune's advice. */ riscv_slow_unaligned_access_p = (cpu->tune_info->slow_unaligned_access || TARGET_STRICT_ALIGN); + if ((target_flags_explicit & MASK_STRICT_ALIGN) == 0 + && cpu->tune_info->slow_unaligned_access) + target_flags |= MASK_STRICT_ALIGN; /* If the user hasn't specified a branch cost, use the processor's default. */