First round of comments.
http://codereview.chromium.org/18402/diff/1/2 File src/codegen-ia32.cc (right): http://codereview.chromium.org/18402/diff/1/2#newcode4157 Line 4157: frame_->Spill(answer.reg()); You should spill answer.reg() more lazily: only on paths where overwriting it is inevitable. http://codereview.chromium.org/18402/diff/1/2#newcode4165 Line 4165: answer.Unuse(); Unuse answer before the branch. http://codereview.chromium.org/18402/diff/1/2#newcode4185 Line 4185: temp.Unuse(); Unuse temp and answer before the branch. http://codereview.chromium.org/18402/diff/1/2#newcode4194 Line 4194: answer.Unuse(); Same. http://codereview.chromium.org/18402/diff/1/2#newcode4228 Line 4228: __ mov(map.reg(), FieldOperand(answer.reg(), HeapObject::kMapOffset)); Can we move the lookup of the map after the following branch? Then if the branch is taken we avoid the read and potentially having to spill to allocate a register. http://codereview.chromium.org/18402/diff/1/2#newcode4290 Line 4290: answer.Unuse(); Unuse answer before branching. http://codereview.chromium.org/18402 --~--~---------~--~----~------------~-------~--~----~ v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev -~----------~----~----~----~------~----~------~--~---
