| 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 (function(global, utils) { | 5 (function(global, utils) { | 
| 6 "use strict"; | 6 "use strict"; | 
| 7 | 7 | 
| 8 %CheckIsBootstrapping(); | 8 %CheckIsBootstrapping(); | 
| 9 | 9 | 
| 10 // ------------------------------------------------------------------- | 10 // ------------------------------------------------------------------- | 
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 93 | 93 | 
| 94 function GetExistingHash(key) { | 94 function GetExistingHash(key) { | 
| 95   if (%_IsSmi(key)) { | 95   if (%_IsSmi(key)) { | 
| 96     return ComputeIntegerHash(key, 0); | 96     return ComputeIntegerHash(key, 0); | 
| 97   } | 97   } | 
| 98   if (IS_STRING(key)) { | 98   if (IS_STRING(key)) { | 
| 99     var field = %_StringGetRawHashField(key); | 99     var field = %_StringGetRawHashField(key); | 
| 100     if ((field & 1 /* Name::kHashNotComputedMask */) === 0) { | 100     if ((field & 1 /* Name::kHashNotComputedMask */) === 0) { | 
| 101       return field >>> 2 /* Name::kHashShift */; | 101       return field >>> 2 /* Name::kHashShift */; | 
| 102     } | 102     } | 
| 103   } else if (IS_RECEIVER(key) && !IS_PROXY(key) && !IS_GLOBAL(key)) { | 103   } else if (IS_RECEIVER(key) && !%_IsJSProxy(key) && !IS_GLOBAL(key)) { | 
| 104     var hash = GET_PRIVATE(key, hashCodeSymbol); | 104     var hash = GET_PRIVATE(key, hashCodeSymbol); | 
| 105     return hash; | 105     return hash; | 
| 106   } | 106   } | 
| 107   return %GenericHash(key); | 107   return %GenericHash(key); | 
| 108 } | 108 } | 
| 109 %SetForceInlineFlag(GetExistingHash); | 109 %SetForceInlineFlag(GetExistingHash); | 
| 110 | 110 | 
| 111 | 111 | 
| 112 function GetHash(key) { | 112 function GetHash(key) { | 
| 113   var hash = GetExistingHash(key); | 113   var hash = GetExistingHash(key); | 
| (...skipping 355 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 469   "set_has", SetHas, | 469   "set_has", SetHas, | 
| 470   "set_delete", SetDelete, | 470   "set_delete", SetDelete, | 
| 471 ]); | 471 ]); | 
| 472 | 472 | 
| 473 utils.Export(function(to) { | 473 utils.Export(function(to) { | 
| 474   to.GetExistingHash = GetExistingHash; | 474   to.GetExistingHash = GetExistingHash; | 
| 475   to.GetHash = GetHash; | 475   to.GetHash = GetHash; | 
| 476 }); | 476 }); | 
| 477 | 477 | 
| 478 }) | 478 }) | 
| OLD | NEW | 
|---|