| Index: src/ia32/macro-assembler-ia32.h
|
| diff --git a/src/ia32/macro-assembler-ia32.h b/src/ia32/macro-assembler-ia32.h
|
| index e62c7d8b4d23d6013b0cddda89db67be31c96773..adbcdc0409b88841daf27363ebd78522189769f8 100644
|
| --- a/src/ia32/macro-assembler-ia32.h
|
| +++ b/src/ia32/macro-assembler-ia32.h
|
| @@ -298,11 +298,22 @@ class MacroAssembler: public Assembler {
|
| // Compare the given value and the value of weak cell.
|
| void CmpWeakValue(Register value, Handle<WeakCell> cell, Register scratch);
|
|
|
| - void GetWeakValue(Register value, Handle<WeakCell> cell);
|
| + void GetWeakValue(Register value, Register scratch, Handle<WeakCell> cell);
|
| +
|
| + // Gets the given value without triggering the read barrier (you must
|
| + // immediately discard the value returned). You might want to use
|
| + // CmpWeakValue instead.
|
| + void GetWeakValueNoReadBarrier(Register value, Handle<WeakCell> cell);
|
| +
|
| + // Load the value of the weak cell in the value register. Branch to the given
|
| + // miss label if the weak cell was cleared.
|
| + void LoadWeakValue(Register value, Handle<WeakCell> cell, Register scratch,
|
| + Label* miss);
|
|
|
| // Load the value of the weak cell in the value register. Branch to the given
|
| // miss label if the weak cell was cleared.
|
| - void LoadWeakValue(Register value, Handle<WeakCell> cell, Label* miss);
|
| + void LoadWeakValueNoReadBarrier(Register value, Handle<WeakCell> cell,
|
| + Label* miss);
|
|
|
| // ---------------------------------------------------------------------------
|
| // JavaScript invokes
|
|
|