OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_X87 | 7 #if V8_TARGET_ARCH_X87 |
8 | 8 |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/codegen.h" | 10 #include "src/codegen.h" |
(...skipping 1155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1166 Context::SECURITY_TOKEN_INDEX * kPointerSize; | 1166 Context::SECURITY_TOKEN_INDEX * kPointerSize; |
1167 mov(scratch1, FieldOperand(scratch1, token_offset)); | 1167 mov(scratch1, FieldOperand(scratch1, token_offset)); |
1168 cmp(scratch1, FieldOperand(scratch2, token_offset)); | 1168 cmp(scratch1, FieldOperand(scratch2, token_offset)); |
1169 j(not_equal, miss); | 1169 j(not_equal, miss); |
1170 | 1170 |
1171 bind(&same_contexts); | 1171 bind(&same_contexts); |
1172 } | 1172 } |
1173 | 1173 |
1174 | 1174 |
1175 // Compute the hash code from the untagged key. This must be kept in sync with | 1175 // Compute the hash code from the untagged key. This must be kept in sync with |
1176 // ComputeIntegerHash in utils.h and KeyedLoadGenericElementStub in | 1176 // ComputeIntegerHash in utils.h and KeyedLoadGenericStub in |
1177 // code-stub-hydrogen.cc | 1177 // code-stub-hydrogen.cc |
1178 // | 1178 // |
1179 // Note: r0 will contain hash code | 1179 // Note: r0 will contain hash code |
1180 void MacroAssembler::GetNumberHash(Register r0, Register scratch) { | 1180 void MacroAssembler::GetNumberHash(Register r0, Register scratch) { |
1181 // Xor original key with a seed. | 1181 // Xor original key with a seed. |
1182 if (serializer_enabled()) { | 1182 if (serializer_enabled()) { |
1183 ExternalReference roots_array_start = | 1183 ExternalReference roots_array_start = |
1184 ExternalReference::roots_array_start(isolate()); | 1184 ExternalReference::roots_array_start(isolate()); |
1185 mov(scratch, Immediate(Heap::kHashSeedRootIndex)); | 1185 mov(scratch, Immediate(Heap::kHashSeedRootIndex)); |
1186 mov(scratch, | 1186 mov(scratch, |
(...skipping 2130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3317 if (ms.shift() > 0) sar(edx, ms.shift()); | 3317 if (ms.shift() > 0) sar(edx, ms.shift()); |
3318 mov(eax, dividend); | 3318 mov(eax, dividend); |
3319 shr(eax, 31); | 3319 shr(eax, 31); |
3320 add(edx, eax); | 3320 add(edx, eax); |
3321 } | 3321 } |
3322 | 3322 |
3323 | 3323 |
3324 } } // namespace v8::internal | 3324 } } // namespace v8::internal |
3325 | 3325 |
3326 #endif // V8_TARGET_ARCH_X87 | 3326 #endif // V8_TARGET_ARCH_X87 |
OLD | NEW |