diff options
author | Kerry McLaughlin <kerry.mclaughlin@arm.com> | 2020-08-11 12:19:42 +0100 |
---|---|---|
committer | Kerry McLaughlin <kerry.mclaughlin@arm.com> | 2020-08-11 12:57:28 +0100 |
commit | 455ed56d48e365f7d095254109abed876dc10c65 (patch) | |
tree | 45d3c3d15b8c2b25c3a15b4cd45f438ab68811ec /lldb/source/Commands/CommandObjectWatchpoint.cpp | |
parent | 49193e1fe7e143555d3b740610d6d1d20a553b2f (diff) | |
download | llvm-455ed56d48e365f7d095254109abed876dc10c65.zip llvm-455ed56d48e365f7d095254109abed876dc10c65.tar.gz llvm-455ed56d48e365f7d095254109abed876dc10c65.tar.bz2 |
[SVE][CodeGen] Legalisation of INSERT_VECTOR_ELT for scalable vectors
When the result type of insertelement needs to be split,
SplitVecRes_INSERT_VECTOR_ELT will try to store the vector to a
stack temporary, store the element at the location of the stack
temporary plus the index, and reload the Lo/Hi parts.
This patch does the following to ensure this works for scalable vectors:
- Sets the StackID with getStackIDForScalableVectors() in CreateStackTemporary
- Adds an IsScalable flag to getMemBasePlusOffset() and scales the
offset by VScale when this is true
- Ensures the immediate is clamped correctly by clampDynamicVectorIndex
so that we don't try to use an out of range index
Reviewed By: david-arm
Differential Revision: https://reviews.llvm.org/D84874
Diffstat (limited to 'lldb/source/Commands/CommandObjectWatchpoint.cpp')
0 files changed, 0 insertions, 0 deletions