Commit 727770a
committed
[RISCV] Adjust RISCVVectorMaskDAGMutation to look for copy to V0
This mutation was introduced in 01a15dc with the goal of avoiding
many copies from V1-v31 to v0 immediately before a mask consuming
instruction. I noticed in a workload that this was not applying
to vmv.s.x (which we use for short vector masks). We'd had a
whitelist of instructions. Instead, we can directly inspect the
user of the current node to see if it's a copy to V0. This isn't
quite precise (as the mask producing instruction could already be
scheduled fairly far from it's single use), but is probably good
enough.
As with all schedule changes, results are mixed. Some significant
improvements, some regressions.1 parent 248be98 commit 727770a
File tree
22 files changed
+812
-975
lines changed- llvm
- lib/Target/RISCV
- test/CodeGen/RISCV/rvv
22 files changed
+812
-975
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
13 | 13 | | |
14 | 14 | | |
15 | 15 | | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
| 16 | + | |
| 17 | + | |
21 | 18 | | |
22 | 19 | | |
23 | 20 | | |
| |||
43 | 40 | | |
44 | 41 | | |
45 | 42 | | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | | - | |
80 | | - | |
81 | | - | |
82 | | - | |
83 | | - | |
84 | | - | |
85 | | - | |
86 | | - | |
87 | | - | |
88 | | - | |
89 | | - | |
90 | | - | |
91 | | - | |
92 | | - | |
93 | | - | |
94 | | - | |
95 | | - | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
100 | | - | |
101 | | - | |
102 | | - | |
103 | | - | |
104 | | - | |
105 | | - | |
106 | | - | |
107 | | - | |
108 | 43 | | |
109 | 44 | | |
110 | 45 | | |
111 | 46 | | |
112 | 47 | | |
113 | 48 | | |
114 | 49 | | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
115 | 68 | | |
116 | 69 | | |
117 | 70 | | |
118 | 71 | | |
119 | 72 | | |
120 | 73 | | |
121 | 74 | | |
122 | | - | |
| 75 | + | |
123 | 76 | | |
124 | 77 | | |
125 | 78 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
49 | | - | |
50 | 49 | | |
51 | 50 | | |
52 | | - | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
53 | 54 | | |
54 | 55 | | |
55 | 56 | | |
| |||
Lines changed: 39 additions & 40 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
698 | 698 | | |
699 | 699 | | |
700 | 700 | | |
701 | | - | |
| 701 | + | |
702 | 702 | | |
703 | 703 | | |
704 | 704 | | |
705 | | - | |
706 | 705 | | |
707 | | - | |
708 | | - | |
709 | | - | |
| 706 | + | |
| 707 | + | |
| 708 | + | |
| 709 | + | |
| 710 | + | |
710 | 711 | | |
711 | 712 | | |
712 | 713 | | |
| |||
973 | 974 | | |
974 | 975 | | |
975 | 976 | | |
976 | | - | |
| 977 | + | |
977 | 978 | | |
978 | 979 | | |
979 | | - | |
980 | | - | |
981 | | - | |
| 980 | + | |
982 | 981 | | |
983 | 982 | | |
984 | | - | |
985 | | - | |
| 983 | + | |
986 | 984 | | |
987 | | - | |
| 985 | + | |
| 986 | + | |
| 987 | + | |
988 | 988 | | |
989 | | - | |
990 | | - | |
991 | | - | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
992 | 992 | | |
993 | 993 | | |
994 | | - | |
| 994 | + | |
| 995 | + | |
995 | 996 | | |
996 | | - | |
| 997 | + | |
997 | 998 | | |
998 | 999 | | |
999 | 1000 | | |
| |||
1003 | 1004 | | |
1004 | 1005 | | |
1005 | 1006 | | |
1006 | | - | |
| 1007 | + | |
1007 | 1008 | | |
1008 | | - | |
1009 | | - | |
1010 | | - | |
| 1009 | + | |
1011 | 1010 | | |
1012 | 1011 | | |
1013 | | - | |
| 1012 | + | |
1014 | 1013 | | |
1015 | | - | |
1016 | 1014 | | |
1017 | | - | |
1018 | | - | |
1019 | | - | |
| 1015 | + | |
| 1016 | + | |
| 1017 | + | |
| 1018 | + | |
1020 | 1019 | | |
1021 | 1020 | | |
1022 | | - | |
| 1021 | + | |
1023 | 1022 | | |
1024 | | - | |
| 1023 | + | |
1025 | 1024 | | |
1026 | 1025 | | |
1027 | 1026 | | |
| |||
1031 | 1030 | | |
1032 | 1031 | | |
1033 | 1032 | | |
1034 | | - | |
| 1033 | + | |
1035 | 1034 | | |
1036 | 1035 | | |
1037 | | - | |
1038 | | - | |
1039 | | - | |
| 1036 | + | |
1040 | 1037 | | |
1041 | 1038 | | |
1042 | | - | |
1043 | | - | |
| 1039 | + | |
1044 | 1040 | | |
1045 | | - | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
1046 | 1044 | | |
1047 | | - | |
1048 | | - | |
1049 | | - | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
1050 | 1048 | | |
1051 | 1049 | | |
1052 | | - | |
| 1050 | + | |
| 1051 | + | |
1053 | 1052 | | |
1054 | | - | |
| 1053 | + | |
1055 | 1054 | | |
1056 | 1055 | | |
1057 | 1056 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
108 | | - | |
109 | 108 | | |
110 | | - | |
111 | | - | |
112 | | - | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
113 | 112 | | |
114 | 113 | | |
115 | 114 | | |
| |||
971 | 970 | | |
972 | 971 | | |
973 | 972 | | |
974 | | - | |
| 973 | + | |
975 | 974 | | |
976 | | - | |
| 975 | + | |
| 976 | + | |
977 | 977 | | |
978 | | - | |
979 | | - | |
980 | | - | |
| 978 | + | |
981 | 979 | | |
982 | 980 | | |
983 | 981 | | |
| |||
0 commit comments