diff options
author | Alfie Richards <Alfie.Richards@arm.com> | 2024-09-11 14:56:28 +0200 |
---|---|---|
committer | Christophe Lyon <christophe.lyon@arm.com> | 2024-10-29 10:03:06 +0100 |
commit | 16ee5c64e60b388df40a2b91d4a145159629cbcd (patch) | |
tree | e41f2ce0fe7a33042c43c6f28da12e0d83d3c87a /gcc | |
parent | 52e36cde0f6680ef56043cb220eb9cd0be927749 (diff) | |
download | gcc-16ee5c64e60b388df40a2b91d4a145159629cbcd.zip gcc-16ee5c64e60b388df40a2b91d4a145159629cbcd.tar.gz gcc-16ee5c64e60b388df40a2b91d4a145159629cbcd.tar.bz2 |
arm: [MVE intrinsics] Add support for predicated contiguous loads and stores
This patch extends
function_expander::use_contiguous_load_insn and
function_expander::use_contiguous_store_insn functions to
support predicated versions.
2024-09-11 Alfie Richards <Alfie.Richards@arm.com>
Christophe Lyon <christophe.lyon@arm.com>
gcc/
* config/arm/arm-mve-builtins.cc
(function_expander::use_contiguous_load_insn): Add support for
PRED_z.
(function_expander::use_contiguous_store_insn): Add support for
PRED_p.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/arm/arm-mve-builtins.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/config/arm/arm-mve-builtins.cc b/gcc/config/arm/arm-mve-builtins.cc index 804eb88..2bde822 100644 --- a/gcc/config/arm/arm-mve-builtins.cc +++ b/gcc/config/arm/arm-mve-builtins.cc @@ -2327,6 +2327,8 @@ function_expander::use_contiguous_load_insn (insn_code icode) add_output_operand (icode); add_mem_operand (mem_mode, get_contiguous_base ()); + if (pred == PRED_z) + add_input_operand (icode, args[1]); return generate_insn (icode); } @@ -2339,6 +2341,8 @@ function_expander::use_contiguous_store_insn (insn_code icode) add_mem_operand (mem_mode, get_contiguous_base ()); add_input_operand (icode, args[1]); + if (pred == PRED_p) + add_input_operand (icode, args[2]); return generate_insn (icode); } |