wasmtime
wasmtime copied to clipboard
Generate more fixed_nonallocatable constraints, and add debug assertions
Add assertions to the OperandCollector
that show we're not using pinned vregs, and use reg_fixed_nonallocatable
constraints when a real register is used with other constraint generation functions like reg_use
etc.
I experimented with adding debug assertions that the reused operand referenced in reg_reuse_def
constraints was compatible with the new constraint that would be generated. This didn't end up being possible as some backends will recursively process instructions when collecting operands, making it impossible without more invasive changes to tell where that operand is in the operand vector. Given that we would need to plumb through somewhat substantial changes to support adding debug assertions, I decided that rephrasing the existing warning comment about real registers would be good enough.
Subscribe to Label Action
cc @cfallin, @fitzgen
Thus the following users have been cc'd because of the following labels:
- cfallin: isle
- fitzgen: isle
To subscribe or unsubscribe from this label, edit the .github/subscribe-to-label.json
configuration file.