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

Side by Side Diff: runtime/vm/flow_graph_compiler_x64.h

Issue 11341025: Propagate ICData from unoptimized code to instance calls in optimized code. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 1 month 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 | « runtime/vm/flow_graph_compiler_ia32.h ('k') | runtime/vm/intermediate_language.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 (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 #ifndef VM_FLOW_GRAPH_COMPILER_X64_H_ 5 #ifndef VM_FLOW_GRAPH_COMPILER_X64_H_
6 #define VM_FLOW_GRAPH_COMPILER_X64_H_ 6 #define VM_FLOW_GRAPH_COMPILER_X64_H_
7 7
8 #ifndef VM_FLOW_GRAPH_COMPILER_H_ 8 #ifndef VM_FLOW_GRAPH_COMPILER_H_
9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_x64.h. 9 #error Include flow_graph_compiler.h instead of flow_graph_compiler_x64.h.
10 #endif 10 #endif
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 void GenerateAssertAssignable(intptr_t token_pos, 95 void GenerateAssertAssignable(intptr_t token_pos,
96 const AbstractType& dst_type, 96 const AbstractType& dst_type,
97 const String& dst_name, 97 const String& dst_name,
98 LocationSummary* locs); 98 LocationSummary* locs);
99 99
100 void GenerateInstanceOf(intptr_t token_pos, 100 void GenerateInstanceOf(intptr_t token_pos,
101 const AbstractType& type, 101 const AbstractType& type,
102 bool negate_result, 102 bool negate_result,
103 LocationSummary* locs); 103 LocationSummary* locs);
104 104
105 // Returns ICData used in the instance call. 105 void GenerateInstanceCall(intptr_t deopt_id,
106 const ICData& GenerateInstanceCall(intptr_t deopt_id, 106 intptr_t token_pos,
107 intptr_t token_pos, 107 intptr_t argument_count,
108 const String& function_name, 108 const Array& argument_names,
109 intptr_t argument_count, 109 LocationSummary* locs,
110 const Array& argument_names, 110 const ICData& ic_data);
111 intptr_t checked_argument_count,
112 LocationSummary* locs);
113 111
114 void GenerateStaticCall(intptr_t deopt_id, 112 void GenerateStaticCall(intptr_t deopt_id,
115 intptr_t token_pos, 113 intptr_t token_pos,
116 const Function& function, 114 const Function& function,
117 intptr_t argument_count, 115 intptr_t argument_count,
118 const Array& argument_names, 116 const Array& argument_names,
119 LocationSummary* locs); 117 LocationSummary* locs);
120 118
121 void GenerateNumberTypeCheck(Register kClassIdReg, 119 void GenerateNumberTypeCheck(Register kClassIdReg,
122 const AbstractType& type, 120 const AbstractType& type,
(...skipping 206 matching lines...) Expand 10 before | Expand all | Expand 10 after
329 // that should be used when deoptimizing we store it in this variable. 327 // that should be used when deoptimizing we store it in this variable.
330 // In future AddDeoptStub should be moved out of the instruction template. 328 // In future AddDeoptStub should be moved out of the instruction template.
331 Environment* pending_deoptimization_env_; 329 Environment* pending_deoptimization_env_;
332 330
333 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler); 331 DISALLOW_COPY_AND_ASSIGN(FlowGraphCompiler);
334 }; 332 };
335 333
336 } // namespace dart 334 } // namespace dart
337 335
338 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_ 336 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_
OLDNEW
« no previous file with comments | « runtime/vm/flow_graph_compiler_ia32.h ('k') | runtime/vm/intermediate_language.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698