diff options
author | David Green <david.green@arm.com> | 2021-12-17 09:16:28 +0000 |
---|---|---|
committer | David Green <david.green@arm.com> | 2021-12-17 09:16:28 +0000 |
commit | 6bd8f114c8f1bccccfdbfd00f1bca118569147ee (patch) | |
tree | 70578f29237ac0b4457b8dd4b649101e1748f7e3 /flang/lib/Frontend/CompilerInvocation.cpp | |
parent | 11dc235c7dda298befa84833a51ac9cdc92e7c2e (diff) | |
download | llvm-6bd8f114c8f1bccccfdbfd00f1bca118569147ee.zip llvm-6bd8f114c8f1bccccfdbfd00f1bca118569147ee.tar.gz llvm-6bd8f114c8f1bccccfdbfd00f1bca118569147ee.tar.bz2 |
[ARM] Handle splats of constants for MVE qr instruction
Some MVE instructions have qr variants that take a Q and R register,
splatting the R register for each lane. This is usually handled fine for
standard splats as we sink the splat into the loop and combine the
resulting dup into the qr instruction. It does not work for constant
splats though, as we generate a vmovimm or constant pool load instead.
This intercepts that, generating a vdup of the constant instead where we
can turn the result into a qr instruction variant.
Differential Revision: https://reviews.llvm.org/D115242
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions