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

Side by Side Diff: src/crankshaft/arm64/lithium-arm64.cc

Issue 1731303002: [crankshaft] Remove useless HCallFunction instruction. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 10 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/crankshaft/arm64/lithium-arm64.h ('k') | src/crankshaft/arm64/lithium-codegen-arm64.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 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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/crankshaft/arm64/lithium-arm64.h" 5 #include "src/crankshaft/arm64/lithium-arm64.h"
6 6
7 #include <sstream> 7 #include <sstream>
8 8
9 #include "src/crankshaft/arm64/lithium-codegen-arm64.h" 9 #include "src/crankshaft/arm64/lithium-codegen-arm64.h"
10 #include "src/crankshaft/hydrogen-osr.h" 10 #include "src/crankshaft/hydrogen-osr.h"
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 128
129 129
130 void LInnerAllocatedObject::PrintDataTo(StringStream* stream) { 130 void LInnerAllocatedObject::PrintDataTo(StringStream* stream) {
131 stream->Add(" = "); 131 stream->Add(" = ");
132 base_object()->PrintTo(stream); 132 base_object()->PrintTo(stream);
133 stream->Add(" + "); 133 stream->Add(" + ");
134 offset()->PrintTo(stream); 134 offset()->PrintTo(stream);
135 } 135 }
136 136
137 137
138 void LCallFunction::PrintDataTo(StringStream* stream) {
139 context()->PrintTo(stream);
140 stream->Add(" ");
141 function()->PrintTo(stream);
142 if (hydrogen()->HasVectorAndSlot()) {
143 stream->Add(" (type-feedback-vector ");
144 temp_vector()->PrintTo(stream);
145 stream->Add(" ");
146 temp_slot()->PrintTo(stream);
147 stream->Add(")");
148 }
149 }
150
151
152 void LInvokeFunction::PrintDataTo(StringStream* stream) { 138 void LInvokeFunction::PrintDataTo(StringStream* stream) {
153 stream->Add("= "); 139 stream->Add("= ");
154 function()->PrintTo(stream); 140 function()->PrintTo(stream);
155 stream->Add(" #%d / ", arity()); 141 stream->Add(" #%d / ", arity());
156 } 142 }
157 143
158 144
159 void LInstruction::PrintTo(StringStream* stream) { 145 void LInstruction::PrintTo(StringStream* stream) {
160 stream->Add("%s ", this->Mnemonic()); 146 stream->Add("%s ", this->Mnemonic());
161 147
(...skipping 880 matching lines...) Expand 10 before | Expand all | Expand 10 after
1042 ops.Add(op, zone()); 1028 ops.Add(op, zone());
1043 } 1029 }
1044 1030
1045 LCallWithDescriptor* result = new(zone()) LCallWithDescriptor(descriptor, 1031 LCallWithDescriptor* result = new(zone()) LCallWithDescriptor(descriptor,
1046 ops, 1032 ops,
1047 zone()); 1033 zone());
1048 return MarkAsCall(DefineFixed(result, x0), instr); 1034 return MarkAsCall(DefineFixed(result, x0), instr);
1049 } 1035 }
1050 1036
1051 1037
1052 LInstruction* LChunkBuilder::DoCallFunction(HCallFunction* instr) {
1053 LOperand* context = UseFixed(instr->context(), cp);
1054 LOperand* function = UseFixed(instr->function(), x1);
1055 LOperand* slot = NULL;
1056 LOperand* vector = NULL;
1057 if (instr->HasVectorAndSlot()) {
1058 slot = FixedTemp(x3);
1059 vector = FixedTemp(x2);
1060 }
1061
1062 LCallFunction* call =
1063 new (zone()) LCallFunction(context, function, slot, vector);
1064 return MarkAsCall(DefineFixed(call, x0), instr);
1065 }
1066
1067
1068 LInstruction* LChunkBuilder::DoCallNewArray(HCallNewArray* instr) { 1038 LInstruction* LChunkBuilder::DoCallNewArray(HCallNewArray* instr) {
1069 LOperand* context = UseFixed(instr->context(), cp); 1039 LOperand* context = UseFixed(instr->context(), cp);
1070 // The call to ArrayConstructCode will expect the constructor to be in x1. 1040 // The call to ArrayConstructCode will expect the constructor to be in x1.
1071 LOperand* constructor = UseFixed(instr->constructor(), x1); 1041 LOperand* constructor = UseFixed(instr->constructor(), x1);
1072 LCallNewArray* result = new(zone()) LCallNewArray(context, constructor); 1042 LCallNewArray* result = new(zone()) LCallNewArray(context, constructor);
1073 return MarkAsCall(DefineFixed(result, x0), instr); 1043 return MarkAsCall(DefineFixed(result, x0), instr);
1074 } 1044 }
1075 1045
1076 1046
1077 LInstruction* LChunkBuilder::DoCallRuntime(HCallRuntime* instr) { 1047 LInstruction* LChunkBuilder::DoCallRuntime(HCallRuntime* instr) {
(...skipping 1612 matching lines...) Expand 10 before | Expand all | Expand 10 after
2690 2660
2691 2661
2692 LInstruction* LChunkBuilder::DoStoreFrameContext(HStoreFrameContext* instr) { 2662 LInstruction* LChunkBuilder::DoStoreFrameContext(HStoreFrameContext* instr) {
2693 LOperand* context = UseRegisterAtStart(instr->context()); 2663 LOperand* context = UseRegisterAtStart(instr->context());
2694 return new(zone()) LStoreFrameContext(context); 2664 return new(zone()) LStoreFrameContext(context);
2695 } 2665 }
2696 2666
2697 2667
2698 } // namespace internal 2668 } // namespace internal
2699 } // namespace v8 2669 } // namespace v8
OLDNEW
« no previous file with comments | « src/crankshaft/arm64/lithium-arm64.h ('k') | src/crankshaft/arm64/lithium-codegen-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698