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

Side by Side Diff: src/hydrogen-instructions.cc

Issue 283923003: Merged bleeding edge r20949 into 3.25 branch. (Closed) Base URL: https://v8.googlecode.com/svn/branches/3.25
Patch Set: Created 6 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-ia32.cc » ('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 // 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 2551 matching lines...) Expand 10 before | Expand all | Expand 10 after
2562 2562
2563 2563
2564 void HPhi::AddIndirectUsesTo(int* dest) { 2564 void HPhi::AddIndirectUsesTo(int* dest) {
2565 for (int i = 0; i < Representation::kNumRepresentations; i++) { 2565 for (int i = 0; i < Representation::kNumRepresentations; i++) {
2566 dest[i] += indirect_uses_[i]; 2566 dest[i] += indirect_uses_[i];
2567 } 2567 }
2568 } 2568 }
2569 2569
2570 2570
2571 void HSimulate::MergeWith(ZoneList<HSimulate*>* list) { 2571 void HSimulate::MergeWith(ZoneList<HSimulate*>* list) {
2572 if (!list->is_empty() && !HasAstId()) {
2573 set_ast_id(list->last()->ast_id());
2574 }
2572 while (!list->is_empty()) { 2575 while (!list->is_empty()) {
2573 HSimulate* from = list->RemoveLast(); 2576 HSimulate* from = list->RemoveLast();
2574 ZoneList<HValue*>* from_values = &from->values_; 2577 ZoneList<HValue*>* from_values = &from->values_;
2575 for (int i = 0; i < from_values->length(); ++i) { 2578 for (int i = 0; i < from_values->length(); ++i) {
2576 if (from->HasAssignedIndexAt(i)) { 2579 if (from->HasAssignedIndexAt(i)) {
2577 int index = from->GetAssignedIndexAt(i); 2580 int index = from->GetAssignedIndexAt(i);
2578 if (HasValueForIndex(index)) continue; 2581 if (HasValueForIndex(index)) continue;
2579 AddAssignedValue(index, from_values->at(i)); 2582 AddAssignedValue(index, from_values->at(i));
2580 } else { 2583 } else {
2581 if (pop_count_ > 0) { 2584 if (pop_count_ > 0) {
(...skipping 1866 matching lines...) Expand 10 before | Expand all | Expand 10 after
4448 HBasicBlock* defining_block = value->block(); 4451 HBasicBlock* defining_block = value->block();
4449 HBasicBlock* predecessor_block = block()->predecessors()->at(i); 4452 HBasicBlock* predecessor_block = block()->predecessors()->at(i);
4450 ASSERT(defining_block == predecessor_block || 4453 ASSERT(defining_block == predecessor_block ||
4451 defining_block->Dominates(predecessor_block)); 4454 defining_block->Dominates(predecessor_block));
4452 } 4455 }
4453 } 4456 }
4454 4457
4455 4458
4456 void HSimulate::Verify() { 4459 void HSimulate::Verify() {
4457 HInstruction::Verify(); 4460 HInstruction::Verify();
4458 ASSERT(HasAstId()); 4461 ASSERT(HasAstId() || next()->IsEnterInlined());
4459 } 4462 }
4460 4463
4461 4464
4462 void HCheckHeapObject::Verify() { 4465 void HCheckHeapObject::Verify() {
4463 HInstruction::Verify(); 4466 HInstruction::Verify();
4464 ASSERT(HasNoUses()); 4467 ASSERT(HasNoUses());
4465 } 4468 }
4466 4469
4467 4470
4468 void HCheckValue::Verify() { 4471 void HCheckValue::Verify() {
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after
4695 break; 4698 break;
4696 case kExternalMemory: 4699 case kExternalMemory:
4697 stream->Add("[external-memory]"); 4700 stream->Add("[external-memory]");
4698 break; 4701 break;
4699 } 4702 }
4700 4703
4701 stream->Add("@%d", offset()); 4704 stream->Add("@%d", offset());
4702 } 4705 }
4703 4706
4704 } } // namespace v8::internal 4707 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/hydrogen-instructions.h ('k') | src/ia32/lithium-ia32.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698