diff options
author | Philip Reames <preames@rivosinc.com> | 2024-04-22 13:41:27 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-22 13:41:27 -0700 |
commit | 5a7c80ca58c628fab80aa4f95bb6d18598c70c80 (patch) | |
tree | ed5df06ef8f314899d61b69bf1554cca295eff48 /lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h | |
parent | b8ff08d0e668e5397dd799b76ede0bd54fcba75c (diff) | |
download | llvm-5a7c80ca58c628fab80aa4f95bb6d18598c70c80.zip llvm-5a7c80ca58c628fab80aa4f95bb6d18598c70c80.tar.gz llvm-5a7c80ca58c628fab80aa4f95bb6d18598c70c80.tar.bz2 |
[RISCV] Implement RISCVISD::SHL_ADD and move patterns into combine (#89263)
This implements a RISCV specific version of the SHL_ADD node proposed in
https://github.com/llvm/llvm-project/pull/88791.
If that lands, the infrastructure from this patch should seamlessly
switch over the to generic DAG node. I'm posting this separately because
I've run out of useful multiply strength reduction work to do without
having a way to represent MUL X, 3/5/9 as a single instruction.
The majority of this change is moving two sets of patterns out of
tablgen and into the post-legalize combine. The major reason for this is
that I have an upcoming change which needs to reuse the expansion logic,
but it also helps common up some code between zba and the THeadBa
variants.
On the test changes, there's a couple major categories:
* We chose a different lowering for mul x, 25. The new lowering involves
one fewer register and the same critical path, so this seems like a win.
* The order of the two multiplies changes in (3,5,9)*(3,5,9) in some
cases. I don't believe this matters.
* I'm removing the one use restriction on the multiply. This restriction
doesn't really make sense to me, and the test changes appear positive.
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonReadline.h')
0 files changed, 0 insertions, 0 deletions