cranelift/s390x: Use PRegs consistently #8449
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When OperandCollector's reg_use/reg_late_use/reg_def/reg_early_def methods are handed a Reg that refers to a physical ("real") register, they all delegate to reg_fixed_nonallocatable, ignoring the constraint kinds and positions. This behavior was introduced in #5132.
In several cases, the s390x backend was calling those methods with the result of the
gpr
orwritable_gpr
functions, which return physical registers. In these cases we can be more explicit that this is a non-allocatable register.In addition, this PR reverts #4973 and #5121 because they became unecessary due, again, to #5132.
This doesn't change any behavior but is a nice change to split out of a larger PR I'm working on.
cc: @uweigand