Reviewers: fschneider,
Message:
I'm not thrilled with the PushArgument instructions that pop in and out of
existence all over the place. Cleaning that up would make this a bigger
change,
so I've left it fairly explicit and ugly for now.
Before committing I will have to disable the stack trace test or else
change the
way we print traces for the inlined functions.
Description:
Shorten live ranges of argument subexpressions.
Before, argument subexpressions were live up until the call that
consumed them. With this change we end their live ranges as soon as
possible. This eliminates a write and read when we would previously
spill them to the wrong location, and simplifies the register
allocator's job to not have to consider these subexpressions.
Please review this at http://codereview.chromium.org/5964005/
SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge
Affected files:
M src/arm/lithium-arm.h
M src/arm/lithium-arm.cc
M src/arm/lithium-codegen-arm.cc
M src/hydrogen-instructions.h
M src/hydrogen-instructions.cc
M src/hydrogen.h
M src/hydrogen.cc
M src/ia32/lithium-codegen-ia32.cc
M src/ia32/lithium-ia32.h
M src/ia32/lithium-ia32.cc
M test/mjsunit/compiler/regress-stacktrace.js
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev