diff options
| author | Geoff Berry <gberry@codeaurora.org> | 2016-11-14 19:39:04 +0000 |
|---|---|---|
| committer | Geoff Berry <gberry@codeaurora.org> | 2016-11-14 19:39:04 +0000 |
| commit | 526c50588d9b6ffe7cdefdc36d917e0416e14315 (patch) | |
| tree | e15411ef3ac095b48f5fb05a2e2a76bc5cab17cb /libcxx/test/std/thread | |
| parent | def4bfa9d9f744656183720fa1092b88897ed496 (diff) | |
| download | bcm5719-llvm-526c50588d9b6ffe7cdefdc36d917e0416e14315.tar.gz bcm5719-llvm-526c50588d9b6ffe7cdefdc36d917e0416e14315.zip | |
[AArch64] Split 0 vector stores into scalar store pairs.
Summary:
Replace a splat of zeros to a vector store by scalar stores of WZR/XZR.
The load store optimizer pass will merge them to store pair stores.
This should be better than a movi to create the vector zero followed by
a vector store if the zero constant is not re-used, since one
instructions and one register live range will be removed.
For example, the final generated code should be:
stp xzr, xzr, [x0]
instead of:
movi v0.2d, #0
str q0, [x0]
Reviewers: t.p.northover, mcrosier, MatzeB, jmolloy
Subscribers: aemerson, rengolin, llvm-commits
Differential Revision: https://reviews.llvm.org/D26561
llvm-svn: 286875
Diffstat (limited to 'libcxx/test/std/thread')
0 files changed, 0 insertions, 0 deletions

