-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add a label to dt_cg_probe_error, which is dropped on the first instruction if set; eschew regset allocation on the grounds that spilling to the stack is pointless when the regs will all be thrown away in any case, and can trigger errors if some of the regs are not properly initialized, as is relatively likely in an error condition. Also add a new dt_cg_probe_error_regval, which is like dt_cg_probe_error except the last argument is not an illegal value but a register whose value should be emitted. This is a bit trickier: we must move the illegal register arg into place first because we don't use the regset allocation code, so it might be using one of the regs we're about to overwrite; and don't emit a move at all if we're by chance already using that reg (the verifier doesn't like mov %r4, %r4 very much). Signed-off-by: Nick Alcock <nick.alcock@oracle.com>
- Loading branch information
1 parent
bee8e53
commit e9074ef
Showing
1 changed file
with
59 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters