[llvm] [RISCV][WIP] Fold (sh3add Z, (add X, (slli Y, 6))) -> (sh3add (sh3add Y, Z), X). (PR #85734)

Wang Pengcheng via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 18 23:19:13 PDT 2024


================
@@ -3320,6 +3322,44 @@ bool RISCVDAGToDAGISel::selectRVVSimm5(SDValue N, unsigned Width,
   return false;
 }
 
+// Fold (sh3add Z, (add X, (slli Y, 6))) -> (sh3add (sh3add Y, Z), X).
----------------
wangpc-pp wrote:

Is this pattern possible too? 
```
(sh2add Z, (add X, (slli Y, 4))) -> (sh2add (sh2add Y, Z), X)
```

https://github.com/llvm/llvm-project/pull/85734


More information about the llvm-commits mailing list