| Index: src/x64/code-stubs-x64.cc
|
| ===================================================================
|
| --- src/x64/code-stubs-x64.cc (revision 11005)
|
| +++ src/x64/code-stubs-x64.cc (working copy)
|
| @@ -5991,42 +5991,45 @@
|
| };
|
|
|
|
|
| +#define REG(Name) { kRegister_ ## Name ## _Code }
|
| +
|
| struct AheadOfTimeWriteBarrierStubList kAheadOfTime[] = {
|
| // Used in RegExpExecStub.
|
| - { rbx, rax, rdi, EMIT_REMEMBERED_SET },
|
| + { REG(rbx), REG(rax), REG(rdi), EMIT_REMEMBERED_SET },
|
| // Used in CompileArrayPushCall.
|
| - { rbx, rcx, rdx, EMIT_REMEMBERED_SET },
|
| + { REG(rbx), REG(rcx), REG(rdx), EMIT_REMEMBERED_SET },
|
| // Used in CompileStoreGlobal.
|
| - { rbx, rcx, rdx, OMIT_REMEMBERED_SET },
|
| + { REG(rbx), REG(rcx), REG(rdx), OMIT_REMEMBERED_SET },
|
| // Used in StoreStubCompiler::CompileStoreField and
|
| // KeyedStoreStubCompiler::CompileStoreField via GenerateStoreField.
|
| - { rdx, rcx, rbx, EMIT_REMEMBERED_SET },
|
| + { REG(rdx), REG(rcx), REG(rbx), EMIT_REMEMBERED_SET },
|
| // GenerateStoreField calls the stub with two different permutations of
|
| // registers. This is the second.
|
| - { rbx, rcx, rdx, EMIT_REMEMBERED_SET },
|
| + { REG(rbx), REG(rcx), REG(rdx), EMIT_REMEMBERED_SET },
|
| // StoreIC::GenerateNormal via GenerateDictionaryStore.
|
| - { rbx, r8, r9, EMIT_REMEMBERED_SET },
|
| + { REG(rbx), REG(r8), REG(r9), EMIT_REMEMBERED_SET },
|
| // KeyedStoreIC::GenerateGeneric.
|
| - { rbx, rdx, rcx, EMIT_REMEMBERED_SET},
|
| + { REG(rbx), REG(rdx), REG(rcx), EMIT_REMEMBERED_SET},
|
| // KeyedStoreStubCompiler::GenerateStoreFastElement.
|
| - { rdi, rbx, rcx, EMIT_REMEMBERED_SET},
|
| - { rdx, rdi, rbx, EMIT_REMEMBERED_SET},
|
| + { REG(rdi), REG(rbx), REG(rcx), EMIT_REMEMBERED_SET},
|
| + { REG(rdx), REG(rdi), REG(rbx), EMIT_REMEMBERED_SET},
|
| // ElementsTransitionGenerator::GenerateSmiOnlyToObject
|
| // and ElementsTransitionGenerator::GenerateSmiOnlyToObject
|
| // and ElementsTransitionGenerator::GenerateDoubleToObject
|
| - { rdx, rbx, rdi, EMIT_REMEMBERED_SET},
|
| - { rdx, rbx, rdi, OMIT_REMEMBERED_SET},
|
| + { REG(rdx), REG(rbx), REG(rdi), EMIT_REMEMBERED_SET},
|
| + { REG(rdx), REG(rbx), REG(rdi), OMIT_REMEMBERED_SET},
|
| // ElementsTransitionGenerator::GenerateSmiOnlyToDouble
|
| // and ElementsTransitionGenerator::GenerateDoubleToObject
|
| - { rdx, r11, r15, EMIT_REMEMBERED_SET},
|
| + { REG(rdx), REG(r11), REG(r15), EMIT_REMEMBERED_SET},
|
| // ElementsTransitionGenerator::GenerateDoubleToObject
|
| - { r11, rax, r15, EMIT_REMEMBERED_SET},
|
| + { REG(r11), REG(rax), REG(r15), EMIT_REMEMBERED_SET},
|
| // StoreArrayLiteralElementStub::Generate
|
| - { rbx, rax, rcx, EMIT_REMEMBERED_SET},
|
| + { REG(rbx), REG(rax), REG(rcx), EMIT_REMEMBERED_SET},
|
| // Null termination.
|
| - { no_reg, no_reg, no_reg, EMIT_REMEMBERED_SET}
|
| + { REG(no_reg), REG(no_reg), REG(no_reg), EMIT_REMEMBERED_SET}
|
| };
|
|
|
| +#undef REG
|
|
|
| bool RecordWriteStub::IsPregenerated() {
|
| for (AheadOfTimeWriteBarrierStubList* entry = kAheadOfTime;
|
|
|