Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
LGTM, though maybe re-consider the kill flag change unless you have a reason to add one...
llvm/lib/CodeGen/RegAllocFast.cpp | ||
---|---|---|
1357 | We don't track liveness for reserved register (they're considered to be always alive). So I don't see what the point of adding a kill flag here is. I would expect it to not matter one way or another and not having a kill flag being less noise... |
llvm/lib/CodeGen/RegAllocFast.cpp | ||
---|---|---|
1357 | https://github.com/llvm/llvm-project/blob/main/llvm/include/llvm/CodeGen/TargetRegisterInfo.h#L520 for a comment on reserved regs. |
llvm/lib/CodeGen/RegAllocFast.cpp | ||
---|---|---|
1207 | I would expect more than 8 def operands to be very rare so I wouldn't really worry about reallocations... That said I also don't know why moving the SmallVector around helps anything... |
llvm/lib/CodeGen/RegAllocFast.cpp | ||
---|---|---|
1357 | And I just noticed the other comment, saying that we will never reach this point in the file for reserved regs. Makes sense! |
I'll try to look at it later this or may be earlier next week. I'm a bit detached from this topic and need some time to refresh.
llvm/lib/CodeGen/RegAllocFast.cpp | ||
---|---|---|
1207 | I agree, this is bad change. Originally I planned to add a support of statepoint instruction in the mode when it may have a lot of tied defs, And indeed this may require reallocation, so it is better to return this back. |
This now may require new reallocation for each call