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

Side by Side Diff: src/code-stub-assembler.cc

Issue 1999003002: WIP: Register allocator crash repro. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Rebased Created 4 years, 6 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/code-stub-assembler.h ('k') | src/code-stubs.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 2016 the V8 project authors. All rights reserved. 1 // Copyright 2016 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/code-stub-assembler.h" 5 #include "src/code-stub-assembler.h"
6 #include "src/code-factory.h" 6 #include "src/code-factory.h"
7 7
8 namespace v8 { 8 namespace v8 {
9 namespace internal { 9 namespace internal {
10 10
(...skipping 1291 matching lines...) Expand 10 before | Expand all | Expand 10 after
1302 Bind(&if_done); 1302 Bind(&if_done);
1303 return var_result.value(); 1303 return var_result.value();
1304 } 1304 }
1305 1305
1306 Node* CodeStubAssembler::BitFieldDecode(Node* word32, uint32_t shift, 1306 Node* CodeStubAssembler::BitFieldDecode(Node* word32, uint32_t shift,
1307 uint32_t mask) { 1307 uint32_t mask) {
1308 return Word32Shr(Word32And(word32, Int32Constant(mask)), 1308 return Word32Shr(Word32And(word32, Int32Constant(mask)),
1309 Int32Constant(shift)); 1309 Int32Constant(shift));
1310 } 1310 }
1311 1311
1312 void CodeStubAssembler::Boom() {
1313 Label block1(this, Label::kDeferred);
1314 Goto(&block1);
1315 Bind(&block1);
1316 {
1317 Variable var_object(this, MachineRepresentation::kTagged);
1318 Label loop(this, &var_object);
1319 var_object.Bind(IntPtrConstant(0));
1320 Goto(&loop);
1321 Bind(&loop);
1322 {
1323 Node* map = LoadMap(var_object.value());
1324
1325 var_object.Bind(map);
1326 Goto(&loop);
1327 }
1328 }
1329 }
1330
1312 void CodeStubAssembler::TryToName(Node* key, Label* if_keyisindex, 1331 void CodeStubAssembler::TryToName(Node* key, Label* if_keyisindex,
1313 Variable* var_index, Label* if_keyisunique, 1332 Variable* var_index, Label* if_keyisunique,
1314 Label* call_runtime) { 1333 Label* call_runtime) {
1315 DCHECK_EQ(MachineRepresentation::kWord32, var_index->rep()); 1334 DCHECK_EQ(MachineRepresentation::kWord32, var_index->rep());
1316 1335
1317 Label if_keyissmi(this), if_keyisnotsmi(this); 1336 Label if_keyissmi(this), if_keyisnotsmi(this);
1318 Branch(WordIsSmi(key), &if_keyissmi, &if_keyisnotsmi); 1337 Branch(WordIsSmi(key), &if_keyissmi, &if_keyisnotsmi);
1319 Bind(&if_keyissmi); 1338 Bind(&if_keyissmi);
1320 { 1339 {
1321 // Negative smi keys are named properties. Handle in the runtime. 1340 // Negative smi keys are named properties. Handle in the runtime.
(...skipping 294 matching lines...) Expand 10 before | Expand all | Expand 10 after
1616 } 1635 }
1617 return IntPtrAdd( 1636 return IntPtrAdd(
1618 IntPtrConstant(base_size), 1637 IntPtrConstant(base_size),
1619 (element_size_shift >= 0) 1638 (element_size_shift >= 0)
1620 ? WordShl(index_node, IntPtrConstant(element_size_shift)) 1639 ? WordShl(index_node, IntPtrConstant(element_size_shift))
1621 : WordShr(index_node, IntPtrConstant(-element_size_shift))); 1640 : WordShr(index_node, IntPtrConstant(-element_size_shift)));
1622 } 1641 }
1623 1642
1624 } // namespace internal 1643 } // namespace internal
1625 } // namespace v8 1644 } // namespace v8
OLDNEW
« no previous file with comments | « src/code-stub-assembler.h ('k') | src/code-stubs.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698