OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 6658 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6669 Register object, value, address; | 6669 Register object, value, address; |
6670 RememberedSetAction action; | 6670 RememberedSetAction action; |
6671 }; | 6671 }; |
6672 | 6672 |
6673 | 6673 |
6674 struct AheadOfTimeWriteBarrierStubList kAheadOfTime[] = { | 6674 struct AheadOfTimeWriteBarrierStubList kAheadOfTime[] = { |
6675 // Used in RegExpExecStub. | 6675 // Used in RegExpExecStub. |
6676 { ebx, eax, edi, EMIT_REMEMBERED_SET }, | 6676 { ebx, eax, edi, EMIT_REMEMBERED_SET }, |
6677 // Used in CompileArrayPushCall. | 6677 // Used in CompileArrayPushCall. |
6678 { ebx, ecx, edx, EMIT_REMEMBERED_SET }, | 6678 { ebx, ecx, edx, EMIT_REMEMBERED_SET }, |
| 6679 { ebx, edi, edx, OMIT_REMEMBERED_SET }, |
6679 // Used in CompileStoreGlobal and CallFunctionStub. | 6680 // Used in CompileStoreGlobal and CallFunctionStub. |
6680 { ebx, ecx, edx, OMIT_REMEMBERED_SET }, | 6681 { ebx, ecx, edx, OMIT_REMEMBERED_SET }, |
6681 // Used in StoreStubCompiler::CompileStoreField and | 6682 // Used in StoreStubCompiler::CompileStoreField and |
6682 // KeyedStoreStubCompiler::CompileStoreField via GenerateStoreField. | 6683 // KeyedStoreStubCompiler::CompileStoreField via GenerateStoreField. |
6683 { edx, ecx, ebx, EMIT_REMEMBERED_SET }, | 6684 { edx, ecx, ebx, EMIT_REMEMBERED_SET }, |
6684 // GenerateStoreField calls the stub with two different permutations of | 6685 // GenerateStoreField calls the stub with two different permutations of |
6685 // registers. This is the second. | 6686 // registers. This is the second. |
6686 { ebx, ecx, edx, EMIT_REMEMBERED_SET }, | 6687 { ebx, ecx, edx, EMIT_REMEMBERED_SET }, |
6687 // StoreIC::GenerateNormal via GenerateDictionaryStore, CompileArrayPushCall | 6688 // StoreIC::GenerateNormal via GenerateDictionaryStore |
6688 { ebx, edi, edx, EMIT_REMEMBERED_SET }, | 6689 { ebx, edi, edx, EMIT_REMEMBERED_SET }, |
6689 // KeyedStoreIC::GenerateGeneric. | 6690 // KeyedStoreIC::GenerateGeneric. |
6690 { ebx, edx, ecx, EMIT_REMEMBERED_SET}, | 6691 { ebx, edx, ecx, EMIT_REMEMBERED_SET}, |
6691 // KeyedStoreStubCompiler::GenerateStoreFastElement. | 6692 // KeyedStoreStubCompiler::GenerateStoreFastElement. |
6692 { edi, edx, ecx, EMIT_REMEMBERED_SET}, | 6693 { edi, edx, ecx, EMIT_REMEMBERED_SET}, |
6693 // Null termination. | 6694 // Null termination. |
6694 { no_reg, no_reg, no_reg, EMIT_REMEMBERED_SET} | 6695 { no_reg, no_reg, no_reg, EMIT_REMEMBERED_SET} |
6695 }; | 6696 }; |
6696 | 6697 |
6697 | 6698 |
(...skipping 233 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6931 | 6932 |
6932 // Fall through when we need to inform the incremental marker. | 6933 // Fall through when we need to inform the incremental marker. |
6933 } | 6934 } |
6934 | 6935 |
6935 | 6936 |
6936 #undef __ | 6937 #undef __ |
6937 | 6938 |
6938 } } // namespace v8::internal | 6939 } } // namespace v8::internal |
6939 | 6940 |
6940 #endif // V8_TARGET_ARCH_IA32 | 6941 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |