diff options
| author | Jessica Paquette <jpaquette@apple.com> | 2019-05-03 22:37:46 +0000 |
|---|---|---|
| committer | Jessica Paquette <jpaquette@apple.com> | 2019-05-03 22:37:46 +0000 |
| commit | 910630c1e4a13513eba8e205ebe2cee2a9c18407 (patch) | |
| tree | 16daadde273552c3a26816a6a47e893db57ec2af /lldb/source/API/SBAddress.cpp | |
| parent | 99f8c4f5b659ab92c8eafc6dc9f887f1af465eb0 (diff) | |
| download | bcm5719-llvm-910630c1e4a13513eba8e205ebe2cee2a9c18407.tar.gz bcm5719-llvm-910630c1e4a13513eba8e205ebe2cee2a9c18407.zip | |
[AArch64][GlobalISel] Use fcsel instead of csel for G_SELECT on FPRs
This saves us some unnecessary copies.
If the inputs to a G_SELECT are floating point, we should use fcsel rather than
csel.
Changes here are...
- Teach selectCopy about s1-to-s1 copies across register banks.
- AArch64RegisterBankInfo about G_SELECT in general.
- Teach the instruction selector about the FCSEL instructions.
Also add two tests:
- select-select.mir to show that we get the expected FCSEL
- regbank-select.mir (unfortunately named) to show the register banks on
G_SELECT are properly preserved
And update fast-isel-select.ll to show that we do the same thing as other
instruction selectors in these cases.
llvm-svn: 359940
Diffstat (limited to 'lldb/source/API/SBAddress.cpp')
0 files changed, 0 insertions, 0 deletions

