diff options
author | Dan Albert <danalbert@google.com> | 2015-09-08 21:20:08 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-09-08 21:20:08 +0000 |
commit | 3a0cddad3cd2639a22002ae5f3102441414f8012 (patch) | |
tree | 913fe33d078ab18a264a3e7abf592e154e743569 /gcc-4.9/gcc/config/aarch64/aarch64-protos.h | |
parent | bf3ee5450810f5aea704c8d304cb60733442c40b (diff) | |
parent | 220882082b32a048e224bc678f5a3b6fe87259b7 (diff) | |
download | toolchain_gcc-3a0cddad3cd2639a22002ae5f3102441414f8012.tar.gz toolchain_gcc-3a0cddad3cd2639a22002ae5f3102441414f8012.tar.bz2 toolchain_gcc-3a0cddad3cd2639a22002ae5f3102441414f8012.zip |
Merge "[4.9] Adjust several costs for AArch64."
Diffstat (limited to 'gcc-4.9/gcc/config/aarch64/aarch64-protos.h')
-rw-r--r-- | gcc-4.9/gcc/config/aarch64/aarch64-protos.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gcc-4.9/gcc/config/aarch64/aarch64-protos.h b/gcc-4.9/gcc/config/aarch64/aarch64-protos.h index 8b0a70538..e78348ea0 100644 --- a/gcc-4.9/gcc/config/aarch64/aarch64-protos.h +++ b/gcc-4.9/gcc/config/aarch64/aarch64-protos.h @@ -108,9 +108,22 @@ enum aarch64_symbol_type cost models and vectors for address cost calculations, register move costs and memory move costs. */ +/* Scaled addressing modes can vary cost depending on the mode of the + value to be loaded/stored. QImode values cannot use scaled + addressing modes. */ + +struct scale_addr_mode_cost +{ + const int hi; + const int si; + const int di; + const int ti; +}; + /* Additional cost for addresses. */ struct cpu_addrcost_table { + const struct scale_addr_mode_cost addr_scale_costs; const int pre_modify; const int post_modify; const int register_offset; |