| Index: src/arm/code-stubs-arm.cc
|
| diff --git a/src/arm/code-stubs-arm.cc b/src/arm/code-stubs-arm.cc
|
| index 24d10c8a4b06695b06d3923134cdef231f0405fc..f98c877befd7f7e1637c6de49765db0deb0897f9 100644
|
| --- a/src/arm/code-stubs-arm.cc
|
| +++ b/src/arm/code-stubs-arm.cc
|
| @@ -3403,15 +3403,10 @@ void CEntryStub::GenerateCore(MacroAssembler* masm,
|
|
|
| __ mov(r2, Operand(ExternalReference::isolate_address()));
|
|
|
| -
|
| - // TODO(1242173): To let the GC traverse the return address of the exit
|
| - // frames, we need to know where the return address is. Right now,
|
| - // we store it on the stack to be able to find it again, but we never
|
| - // restore from it in case of changes, which makes it impossible to
|
| - // support moving the C entry code stub. This should be fixed, but currently
|
| - // this is OK because the CEntryStub gets generated so early in the V8 boot
|
| - // sequence that it is not moving ever.
|
| -
|
| + // To let the GC traverse the return address of the exit frames, we need to
|
| + // know where the return address is. The CEntryStub is unmovable, so
|
| + // we can store the address on the stack to be able to find it again and
|
| + // we never have to restore it, because it will not change.
|
| // Compute the return address in lr to return to after the jump below. Pc is
|
| // already at '+ 8' from the current instruction but return is after three
|
| // instructions so add another 4 to pc to get the return address.
|
|
|