summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/python_api/breakpoint/TestBreakpointAPI.py
diff options
context:
space:
mode:
authorDavid Green <david.green@arm.com>2019-09-24 10:10:41 +0000
committerDavid Green <david.green@arm.com>2019-09-24 10:10:41 +0000
commit49d851f403a5e2c9344f15ce794e1f33f3f81f10 (patch)
tree1d8d0daf916e5dfc315cb29c36efa66d1d46878f /lldb/packages/Python/lldbsuite/test/python_api/breakpoint/TestBreakpointAPI.py
parent9379d19ff86cf5fb7931599ccac30bcf223badb9 (diff)
downloadbcm5719-llvm-49d851f403a5e2c9344f15ce794e1f33f3f81f10.tar.gz
bcm5719-llvm-49d851f403a5e2c9344f15ce794e1f33f3f81f10.zip
[ARM] Split large truncating MVE stores
MVE does not have a simple sign extend instruction that can move elements across lanes. We currently often end up moving each lane into and out of a GPR, in order to get elements into the correct places. When we have a store of a trunc (or a extend of a load), we can instead just split the store/load in two, using the narrowing/widening load/store instructions from each half of the vector. This does that for stores. It happens very early in a store combine, so as to easily detect the truncates. (It would be possible to do this later, but that would involve looking through a buildvector of extract elements. Not impossible but this way seemed simpler). By enabling store combines we also get a vmovdrr combine for free, helping some other tests. Differential Revision: https://reviews.llvm.org/D67828 llvm-svn: 372717
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/python_api/breakpoint/TestBreakpointAPI.py')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud