diff options
author | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2017-04-04 22:55:53 +0000 |
---|---|---|
committer | Ahmed Bougacha <ahmed.bougacha@gmail.com> | 2017-04-04 22:55:53 +0000 |
commit | d3c03a5ddd9523386ef766a397483d09a60f7156 (patch) | |
tree | aae82cca474dc693b9f0f1257dbe6c0cab892b6c /lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h | |
parent | e73e00c9b29b3d9b28b728849b06ed6b0b9bea88 (diff) | |
download | bcm5719-llvm-d3c03a5ddd9523386ef766a397483d09a60f7156.tar.gz bcm5719-llvm-d3c03a5ddd9523386ef766a397483d09a60f7156.zip |
[AArch64] Avoid partial register deps on insertelt of load into lane 0.
This improves upon r246462: that prevented FMOVs from being emitted
for the cross-class INSERT_SUBREGs by disabling the formation of
INSERT_SUBREGs of LOAD. But the ld1.s that we started selecting
caused us to introduce partial dependencies on the vector register.
Avoid that by using SCALAR_TO_VECTOR: it's a first-class citizen that
is folded away by many patterns, including the scalar LDRS that we
want in this case.
Credit goes to Adam for finding the issue!
llvm-svn: 299482
Diffstat (limited to 'lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.h')
0 files changed, 0 insertions, 0 deletions