Commit caf1c1cd by Andrew Waterman Committed by Palmer Dabbelt

RISC-V: If -m[no-]strict-align is not passed, assume its value from -mtune

2017-11-04  Andrew Waterman  <andrew@sifive.com>

	* config/riscv/riscv.c (riscv_option_override): Conditionally set
	TARGET_STRICT_ALIGN based upon -mtune argument.

From-SVN: r254417
parent ecc82a8d
2017-11-04 Andrew Waterman <andrew@sifive.com> 2017-11-04 Andrew Waterman <andrew@sifive.com>
* config/riscv/riscv.c (riscv_option_override): Conditionally set
TARGET_STRICT_ALIGN based upon -mtune argument.
2017-11-04 Andrew Waterman <andrew@sifive.com>
* config/riscv/riscv.h (SLOW_BYTE_ACCESS): Change to 1. * config/riscv/riscv.h (SLOW_BYTE_ACCESS): Change to 1.
2017-11-04 Daniel Santos <daniel.santos@pobox.com> 2017-11-04 Daniel Santos <daniel.santos@pobox.com>
...@@ -3772,9 +3772,13 @@ riscv_option_override (void) ...@@ -3772,9 +3772,13 @@ riscv_option_override (void)
/* Use -mtune's setting for slow_unaligned_access, even when optimizing /* Use -mtune's setting for slow_unaligned_access, even when optimizing
for size. For architectures that trap and emulate unaligned accesses, 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 riscv_slow_unaligned_access_p = (cpu->tune_info->slow_unaligned_access
|| TARGET_STRICT_ALIGN); || 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 /* If the user hasn't specified a branch cost, use the processor's
default. */ default. */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment