Commit 9a097cf
committed
[RISCV] Enable (non trivial) remat for most scalar instructions
This is a follow up to the recent infrastructure work for to
generally support non-trivial rematerialization. This is the first
in a small series to enable non-trivially agressively for the
RISC-V backend. It deliberately avoids both vector instructions
and loads as those seem most likely to expose unexpected
interactions.
Note that this isn't ready to land just yet. We need to collect
both compile time (in progress), and more perf numbers/stats on
at least e.g. spec2017/test-suite. I'm posting it mostly as
a placeholder since multiple people were talking about this and
I want us to avoid duplicating work.1 parent 95144b1 commit 9a097cf
File tree
6 files changed
+4893
-4797
lines changed- llvm
- lib/Target/RISCV
- test/CodeGen/RISCV
- GlobalISel
- rvv
6 files changed
+4893
-4797
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
780 | 780 | | |
781 | 781 | | |
782 | 782 | | |
783 | | - | |
784 | | - | |
785 | | - | |
| 783 | + | |
786 | 784 | | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
787 | 788 | | |
788 | | - | |
| 789 | + | |
789 | 790 | | |
790 | 791 | | |
791 | 792 | | |
792 | 793 | | |
793 | | - | |
794 | | - | |
795 | | - | |
796 | | - | |
797 | | - | |
| 794 | + | |
798 | 795 | | |
799 | 796 | | |
800 | 797 | | |
| |||
826 | 823 | | |
827 | 824 | | |
828 | 825 | | |
| 826 | + | |
829 | 827 | | |
830 | 828 | | |
831 | 829 | | |
| |||
893 | 891 | | |
894 | 892 | | |
895 | 893 | | |
896 | | - | |
| 894 | + | |
897 | 895 | | |
898 | 896 | | |
899 | 897 | | |
| |||
917 | 915 | | |
918 | 916 | | |
919 | 917 | | |
920 | | - | |
| 918 | + | |
921 | 919 | | |
922 | 920 | | |
923 | 921 | | |
| |||
0 commit comments