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

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

Issue 15533004: Liveness analysis for environment slots in Hydrogen (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: addressed comments Created 7 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 | 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 969 matching lines...) Expand 10 before | Expand all | Expand 10 after
980 induction_base()->PrintNameTo(stream); 980 induction_base()->PrintNameTo(stream);
981 stream->Add(")"); 981 stream->Add(")");
982 } 982 }
983 983
984 984
985 void HDummyUse::PrintDataTo(StringStream* stream) { 985 void HDummyUse::PrintDataTo(StringStream* stream) {
986 value()->PrintNameTo(stream); 986 value()->PrintNameTo(stream);
987 } 987 }
988 988
989 989
990 void HEnvironmentMarker::PrintDataTo(StringStream* stream) {
991 stream->Add("%s var[%d]", kind() == BIND ? "bind" : "lookup", index());
992 }
993
994
990 void HUnaryCall::PrintDataTo(StringStream* stream) { 995 void HUnaryCall::PrintDataTo(StringStream* stream) {
991 value()->PrintNameTo(stream); 996 value()->PrintNameTo(stream);
992 stream->Add(" "); 997 stream->Add(" ");
993 stream->Add("#%d", argument_count()); 998 stream->Add("#%d", argument_count());
994 } 999 }
995 1000
996 1001
997 void HBinaryCall::PrintDataTo(StringStream* stream) { 1002 void HBinaryCall::PrintDataTo(StringStream* stream) {
998 first()->PrintNameTo(stream); 1003 first()->PrintNameTo(stream);
999 stream->Add(" "); 1004 stream->Add(" ");
(...skipping 1053 matching lines...) Expand 10 before | Expand all | Expand 10 after
2053 void HDeoptimize::PrintDataTo(StringStream* stream) { 2058 void HDeoptimize::PrintDataTo(StringStream* stream) {
2054 if (OperandCount() == 0) return; 2059 if (OperandCount() == 0) return;
2055 OperandAt(0)->PrintNameTo(stream); 2060 OperandAt(0)->PrintNameTo(stream);
2056 for (int i = 1; i < OperandCount(); ++i) { 2061 for (int i = 1; i < OperandCount(); ++i) {
2057 stream->Add(" "); 2062 stream->Add(" ");
2058 OperandAt(i)->PrintNameTo(stream); 2063 OperandAt(i)->PrintNameTo(stream);
2059 } 2064 }
2060 } 2065 }
2061 2066
2062 2067
2068 void HEnterInlined::RegisterReturnTarget(HBasicBlock* return_target,
2069 Zone* zone) {
2070 ASSERT(return_target->IsInlineReturnTarget());
2071 return_targets_.Add(return_target, zone);
2072 }
2073
2074
2063 void HEnterInlined::PrintDataTo(StringStream* stream) { 2075 void HEnterInlined::PrintDataTo(StringStream* stream) {
2064 SmartArrayPointer<char> name = function()->debug_name()->ToCString(); 2076 SmartArrayPointer<char> name = function()->debug_name()->ToCString();
2065 stream->Add("%s, id=%d", *name, function()->id().ToInt()); 2077 stream->Add("%s, id=%d", *name, function()->id().ToInt());
2066 } 2078 }
2067 2079
2068 2080
2069 static bool IsInteger32(double value) { 2081 static bool IsInteger32(double value) {
2070 double roundtrip_value = static_cast<double>(static_cast<int32_t>(value)); 2082 double roundtrip_value = static_cast<double>(static_cast<int32_t>(value));
2071 return BitCast<int64_t>(roundtrip_value) == BitCast<int64_t>(value); 2083 return BitCast<int64_t>(roundtrip_value) == BitCast<int64_t>(value);
2072 } 2084 }
(...skipping 1589 matching lines...) Expand 10 before | Expand all | Expand 10 after
3662 3674
3663 3675
3664 void HCheckFunction::Verify() { 3676 void HCheckFunction::Verify() {
3665 HInstruction::Verify(); 3677 HInstruction::Verify();
3666 ASSERT(HasNoUses()); 3678 ASSERT(HasNoUses());
3667 } 3679 }
3668 3680
3669 #endif 3681 #endif
3670 3682
3671 } } // namespace v8::internal 3683 } } // 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