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

Side by Side Diff: runtime/vm/flow_graph_compiler_arm.cc

Issue 12398029: Remove the barely used macro assemblers after merging their contents to the base (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 9 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
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM. 5 #include "vm/globals.h" // Needed here to get TARGET_ARCH_ARM.
6 #if defined(TARGET_ARCH_ARM) 6 #if defined(TARGET_ARCH_ARM)
7 7
8 #include "vm/flow_graph_compiler.h" 8 #include "vm/flow_graph_compiler.h"
9 9
10 #include "lib/error.h" 10 #include "lib/error.h"
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 __ CompareImmediate(R7, FLAG_optimization_counter_threshold); 209 __ CompareImmediate(R7, FLAG_optimization_counter_threshold);
210 ASSERT(function_reg == R6); 210 ASSERT(function_reg == R6);
211 __ Branch(&StubCode::OptimizeFunctionLabel(), GE); 211 __ Branch(&StubCode::OptimizeFunctionLabel(), GE);
212 } 212 }
213 } else { 213 } else {
214 AddCurrentDescriptor(PcDescriptors::kEntryPatch, 214 AddCurrentDescriptor(PcDescriptors::kEntryPatch,
215 Isolate::kNoDeoptId, 215 Isolate::kNoDeoptId,
216 0); // No token position. 216 0); // No token position.
217 } 217 }
218 __ Comment("Enter frame"); 218 __ Comment("Enter frame");
219 AssemblerMacros::EnterDartFrame(assembler(), (StackSize() * kWordSize)); 219 __ EnterDartFrame((StackSize() * kWordSize));
220 } 220 }
221 221
222 222
223 void FlowGraphCompiler::CompileGraph() { 223 void FlowGraphCompiler::CompileGraph() {
224 InitCompiler(); 224 InitCompiler();
225 if (TryIntrinsify()) { 225 if (TryIntrinsify()) {
226 // Although this intrinsified code will never be patched, it must satisfy 226 // Although this intrinsified code will never be patched, it must satisfy
227 // CodePatcher::CodeIsPatchable, which verifies that this code has a minimum 227 // CodePatcher::CodeIsPatchable, which verifies that this code has a minimum
228 // code size. 228 // code size.
229 __ bkpt(0); 229 __ bkpt(0);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 // SP + 16 + 4*(n-1) : first argument (arg 0). 299 // SP + 16 + 4*(n-1) : first argument (arg 0).
300 // R5 : ic-data. 300 // R5 : ic-data.
301 // R4 : arguments descriptor array. 301 // R4 : arguments descriptor array.
302 __ BranchLink(&StubCode::CallNoSuchMethodFunctionLabel()); 302 __ BranchLink(&StubCode::CallNoSuchMethodFunctionLabel());
303 if (is_optimizing()) { 303 if (is_optimizing()) {
304 stackmap_table_builder_->AddEntry(assembler()->CodeSize(), 304 stackmap_table_builder_->AddEntry(assembler()->CodeSize(),
305 empty_stack_bitmap, 305 empty_stack_bitmap,
306 0); // No registers. 306 0); // No registers.
307 } 307 }
308 // The noSuchMethod call may return. 308 // The noSuchMethod call may return.
309 AssemblerMacros::LeaveDartFrame(assembler()); 309 __ LeaveDartFrame();
310 __ Ret(); 310 __ Ret();
311 } else { 311 } else {
312 __ Stop("Wrong number of arguments"); 312 __ Stop("Wrong number of arguments");
313 } 313 }
314 __ Bind(&correct_num_arguments); 314 __ Bind(&correct_num_arguments);
315 } 315 }
316 // The arguments descriptor is never saved in the absence of optional 316 // The arguments descriptor is never saved in the absence of optional
317 // parameters, since any argument definition test would always yield true. 317 // parameters, since any argument definition test would always yield true.
318 ASSERT(saved_args_desc_var == NULL); 318 ASSERT(saved_args_desc_var == NULL);
319 } else { 319 } else {
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
617 617
618 618
619 void ParallelMoveResolver::Exchange(const Address& mem1, const Address& mem2) { 619 void ParallelMoveResolver::Exchange(const Address& mem1, const Address& mem2) {
620 UNIMPLEMENTED(); 620 UNIMPLEMENTED();
621 } 621 }
622 622
623 623
624 } // namespace dart 624 } // namespace dart
625 625
626 #endif // defined TARGET_ARCH_ARM 626 #endif // defined TARGET_ARCH_ARM
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698