http://codereview.chromium.org/6170001/diff/44002/src/arm/macro-assembler-arm.cc
File src/arm/macro-assembler-arm.cc (right):

http://codereview.chromium.org/6170001/diff/44002/src/arm/macro-assembler-arm.cc#newcode1478
src/arm/macro-assembler-arm.cc:1478: Call(function->address(),
RelocInfo::RUNTIME_ENTRY);
This will be translated into
mov(lr, Operand(pc), LeaveCC, cond);
mov(pc, Operand(target), LeaveCC, cond);
(or equivalent with blx).

The register is unreachable for GC which needs to fix the return address
if the code has been moved, isn't it?

Apparently the only way to survive code relocation is to make the lr
register to point to an unmovable piece of code.

http://codereview.chromium.org/6170001/

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

Reply via email to