Jessica Paquette
910630c1e4
[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
2019-05-03 22:37:46 +00:00
..
2019-05-03 00:59:52 +00:00
2019-05-03 13:50:38 +00:00
2019-02-21 10:42:49 +00:00
2019-04-19 21:58:10 +00:00
2019-01-19 08:50:56 +00:00
2019-02-06 15:07:59 +00:00
2019-01-19 08:50:56 +00:00
2019-03-22 18:42:14 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-04-26 18:45:04 +00:00
2019-01-19 08:50:56 +00:00
2019-01-28 21:28:40 +00:00
2019-01-28 21:28:40 +00:00
2019-05-03 21:12:36 +00:00
2019-04-09 21:22:33 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-04-04 22:40:06 +00:00
2019-01-19 08:50:56 +00:00
2019-04-04 22:40:06 +00:00
2019-01-19 08:50:56 +00:00
2019-03-18 09:21:06 +00:00
2019-03-25 21:25:28 +00:00
2019-03-18 18:23:23 +00:00
2019-03-21 11:30:17 +00:00
2019-01-19 08:50:56 +00:00
2019-02-01 12:26:06 +00:00
2019-02-28 20:38:45 +00:00
2019-02-01 21:41:33 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-04-23 09:39:58 +00:00
2019-04-23 09:39:58 +00:00
2019-04-19 09:08:38 +00:00
2019-04-23 09:39:58 +00:00
2019-05-03 22:37:46 +00:00
2019-04-23 11:11:34 +00:00
2019-05-03 21:12:36 +00:00
2019-04-30 08:38:12 +00:00
2019-04-26 18:00:01 +00:00
2019-04-11 20:32:24 +00:00
2019-01-19 08:50:56 +00:00
2019-05-03 21:12:36 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-04-13 00:33:25 +00:00
2019-02-01 20:44:24 +00:00
2019-01-19 08:50:56 +00:00
2019-05-03 22:37:46 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-02-13 17:28:47 +00:00
2019-02-01 21:41:33 +00:00
2019-02-13 17:28:47 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-05-02 22:01:39 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-05-02 22:01:39 +00:00
2019-05-02 22:01:39 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-23 08:18:39 +00:00
2019-04-19 09:08:38 +00:00
2019-02-25 15:08:27 +00:00
2019-03-21 11:30:17 +00:00
2019-04-29 15:27:27 +00:00
2019-04-01 14:41:14 +00:00
2019-04-15 04:53:46 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-01-19 08:50:56 +00:00
2019-03-18 18:50:58 +00:00
2019-01-19 08:50:56 +00:00
2019-03-18 18:23:23 +00:00
2019-01-19 08:50:56 +00:00
2019-04-29 15:27:27 +00:00