Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(464)

Side by Side Diff: src/builtins.cc

Issue 1199983002: [strong] Implement strong property access semantics (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: add TODOs Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/builtins.h ('k') | src/code-factory.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #include "src/api.h" 7 #include "src/api.h"
8 #include "src/api-natives.h" 8 #include "src/api-natives.h"
9 #include "src/arguments.h" 9 #include "src/arguments.h"
10 #include "src/base/once.h" 10 #include "src/base/once.h"
(...skipping 1242 matching lines...) Expand 10 before | Expand all | Expand 10 after
1253 return HandleApiCallAsFunctionOrConstructor(isolate, true, args); 1253 return HandleApiCallAsFunctionOrConstructor(isolate, true, args);
1254 } 1254 }
1255 1255
1256 1256
1257 static void Generate_LoadIC_Miss(MacroAssembler* masm) { 1257 static void Generate_LoadIC_Miss(MacroAssembler* masm) {
1258 LoadIC::GenerateMiss(masm); 1258 LoadIC::GenerateMiss(masm);
1259 } 1259 }
1260 1260
1261 1261
1262 static void Generate_LoadIC_Normal(MacroAssembler* masm) { 1262 static void Generate_LoadIC_Normal(MacroAssembler* masm) {
1263 LoadIC::GenerateNormal(masm); 1263 LoadIC::GenerateNormal(masm, SLOPPY);
1264 } 1264 }
1265 1265
1266 1266
1267 static void Generate_LoadIC_Normal_Strong(MacroAssembler* masm) {
1268 LoadIC::GenerateNormal(masm, STRONG);
1269 }
1270
1271
1267 static void Generate_LoadIC_Getter_ForDeopt(MacroAssembler* masm) { 1272 static void Generate_LoadIC_Getter_ForDeopt(MacroAssembler* masm) {
1268 NamedLoadHandlerCompiler::GenerateLoadViaGetterForDeopt(masm); 1273 NamedLoadHandlerCompiler::GenerateLoadViaGetterForDeopt(masm);
1269 } 1274 }
1270 1275
1271 1276
1272 static void Generate_LoadIC_Slow(MacroAssembler* masm) { 1277 static void Generate_LoadIC_Slow(MacroAssembler* masm) {
1273 LoadIC::GenerateRuntimeGetProperty(masm); 1278 LoadIC::GenerateRuntimeGetProperty(masm, SLOPPY);
1274 } 1279 }
1275 1280
1276 1281
1277 static void Generate_KeyedLoadIC_Initialize(MacroAssembler* masm) { 1282 static void Generate_LoadIC_Slow_Strong(MacroAssembler* masm) {
1278 KeyedLoadIC::GenerateInitialize(masm); 1283 LoadIC::GenerateRuntimeGetProperty(masm, STRONG);
1279 } 1284 }
1280 1285
1281 1286
1282 static void Generate_KeyedLoadIC_Slow(MacroAssembler* masm) { 1287 static void Generate_KeyedLoadIC_Slow(MacroAssembler* masm) {
1283 KeyedLoadIC::GenerateRuntimeGetProperty(masm); 1288 KeyedLoadIC::GenerateRuntimeGetProperty(masm, SLOPPY);
1284 } 1289 }
1285 1290
1286 1291
1292 static void Generate_KeyedLoadIC_Slow_Strong(MacroAssembler* masm) {
1293 KeyedLoadIC::GenerateRuntimeGetProperty(masm, STRONG);
1294 }
1295
1296
1287 static void Generate_KeyedLoadIC_Miss(MacroAssembler* masm) { 1297 static void Generate_KeyedLoadIC_Miss(MacroAssembler* masm) {
1288 KeyedLoadIC::GenerateMiss(masm); 1298 KeyedLoadIC::GenerateMiss(masm);
1289 } 1299 }
1290 1300
1291 1301
1292 static void Generate_KeyedLoadIC_Megamorphic(MacroAssembler* masm) { 1302 static void Generate_KeyedLoadIC_Megamorphic(MacroAssembler* masm) {
1293 KeyedLoadIC::GenerateMegamorphic(masm); 1303 KeyedLoadIC::GenerateMegamorphic(masm, SLOPPY);
1294 } 1304 }
1295 1305
1296 1306
1307 static void Generate_KeyedLoadIC_Megamorphic_Strong(MacroAssembler* masm) {
1308 KeyedLoadIC::GenerateMegamorphic(masm, STRONG);
1309 }
1310
1311
1297 static void Generate_StoreIC_Miss(MacroAssembler* masm) { 1312 static void Generate_StoreIC_Miss(MacroAssembler* masm) {
1298 StoreIC::GenerateMiss(masm); 1313 StoreIC::GenerateMiss(masm);
1299 } 1314 }
1300 1315
1301 1316
1302 static void Generate_StoreIC_Normal(MacroAssembler* masm) { 1317 static void Generate_StoreIC_Normal(MacroAssembler* masm) {
1303 StoreIC::GenerateNormal(masm); 1318 StoreIC::GenerateNormal(masm);
1304 } 1319 }
1305 1320
1306 1321
(...skipping 339 matching lines...) Expand 10 before | Expand all | Expand 10 after
1646 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C) 1661 BUILTIN_LIST_C(DEFINE_BUILTIN_ACCESSOR_C)
1647 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A) 1662 BUILTIN_LIST_A(DEFINE_BUILTIN_ACCESSOR_A)
1648 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H) 1663 BUILTIN_LIST_H(DEFINE_BUILTIN_ACCESSOR_H)
1649 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A) 1664 BUILTIN_LIST_DEBUG_A(DEFINE_BUILTIN_ACCESSOR_A)
1650 #undef DEFINE_BUILTIN_ACCESSOR_C 1665 #undef DEFINE_BUILTIN_ACCESSOR_C
1651 #undef DEFINE_BUILTIN_ACCESSOR_A 1666 #undef DEFINE_BUILTIN_ACCESSOR_A
1652 1667
1653 1668
1654 } // namespace internal 1669 } // namespace internal
1655 } // namespace v8 1670 } // namespace v8
OLDNEW
« no previous file with comments | « src/builtins.h ('k') | src/code-factory.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698