Chromium Code Reviews
DescriptionSubzero: Fix a couple of debugging tools.
1. Regalloc dump output was displaying status updates for the wrong variable in some cases.
2. getPhysicalRegister() creates a variable for referring to a specific physical register for low-level purposes, such as the stack pointer, or the frame pointer, or a pushed/popped callee-save register. We change its behavior so that all such physical registers do not have their liveness tracked/validated, not just the stack pointer.
For #2, the original behavior was causing a liveness validation failure if a function had a single basic block and used callee-save registers, and the -asm-verbose flag was used. This is because -asm-verbose runs a final liveness pass after the prolog/epilog are generated, and the initial callee-save register pushes would make it look like single-basic-block variables are live coming into a basic block, which is a hallmark of a liveness problem.
BUG= none
R=jpp@chromium.org
Committed: https://gerrit.chromium.org/gerrit/gitweb?p=native_client/pnacl-subzero.git;a=commit;h=696605575c4ba11df5ec56149c561839d1bfe532
Patch Set 1 #Patch Set 2 : Update a comment #
Total comments: 2
Patch Set 3 : Prepare test for enabling other targets #
Messages
Total messages: 5 (1 generated)
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||