Added new patch set.

http://codereview.chromium.org/7585006/diff/1/src/arm/deoptimizer-arm.cc
File src/arm/deoptimizer-arm.cc (right):

http://codereview.chromium.org/7585006/diff/1/src/arm/deoptimizer-arm.cc#newcode96
src/arm/deoptimizer-arm.cc:96: #ifdef DEBUG
On 2011/08/05 15:10:16, Kevin Millikin wrote:
There must be a better fix than this.  The patcher is designed to
treat an
existing code object like a macro assembler buffer, and overwrite
exactly N
bytes.

The assert is that we overwrote too few bytes.  This fix just disables
the
assert at this site.

Is it possible to change patch_size() to give the correct answer in
this case?

I think making patch_size() giving the correct answer is not possible,
because the size depends on the call target, and that target is not
known when the compiler generates the original (i.e. to-be-patched)
code. So it returns the maximum size (i.e. 3 words) of a call site.

But what we can do, is get the correct size before instantiating a
CodePatcher for each safe-point. See the recent patch set for my
proposal.

http://codereview.chromium.org/7585006/

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to