[AArch64][2/2] Add constrain to address offset in storewb_pair/loadwb_pair insns
authorJiong Wang <jiwang@gcc.gnu.org>
Fri, 1 Aug 2014 15:09:05 +0000 (15:09 +0000)
committerJiong Wang <jiwang@gcc.gnu.org>
Fri, 1 Aug 2014 15:09:05 +0000 (15:09 +0000)
commit4470747882d347fc2da36479aec26fc3d7c938f7
tree28aa443350207a6dd497ca7ddd64b7397dca31d5
parente244d1e6ccc655ce9239423d563c038dd316c2c9
[AArch64][2/2] Add constrain to address offset in storewb_pair/loadwb_pair insns

Add a pridicate to check whether the const offset is valid.
For 32-bit variant: -256 <= offset <= 252
For 64-bit variant: -512 <= offset <= 504

2014-07-29  Renlin Li  <renlin.li@arm.com>
2014-07-29  Jiong Wang  <jiong.wang@arm.com>

gcc/
  * config/aarch64/aarch64.c (offset_7bit_signed_scaled_p): Rename to
  aarch64_offset_7bit_signed_scaled_p, remove static and use it.
  * config/aarch64/aarch64-protos.h (aarch64_offset_7bit_signed_scaled_p):
  Declaration.
  * config/aarch64/predicates.md (aarch64_mem_pair_offset): Define new
  predicate.
  * config/aarch64/aarch64.md (loadwb_pair, storewb_pair): Use
  aarch64_mem_pair_offset.

From-SVN: r213487
gcc/ChangeLog
gcc/config/aarch64/aarch64-protos.h
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.md
gcc/config/aarch64/predicates.md