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

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

Issue 10636038: Minimize differences between ia32 and x64 sources to facilitate maintenance. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 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 | « runtime/vm/flow_graph_compiler_ia32.cc ('k') | runtime/vm/flow_graph_compiler_x64.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
11 11
12 namespace dart { 12 namespace dart {
13 13
14 class Code; 14 class Code;
15 class DeoptimizationStub; 15 class DeoptimizationStub;
16 class ExceptionHandlerList;
17 template <typename T> class GrowableArray; 16 template <typename T> class GrowableArray;
18 class ParsedFunction; 17 class ParsedFunction;
19 18
20 class FlowGraphCompiler : public ValueObject { 19 class FlowGraphCompiler : public ValueObject {
21 private: 20 private:
22 struct BlockInfo : public ZoneAllocated { 21 struct BlockInfo : public ZoneAllocated {
23 public: 22 public:
24 BlockInfo() : label() { } 23 BlockInfo() : label() { }
25 Label label; 24 Label label;
26 }; 25 };
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 66
68 // Returns 'true' if code generation for this function is complete, i.e., 67 // Returns 'true' if code generation for this function is complete, i.e.,
69 // no fall-through to regular code is needed. 68 // no fall-through to regular code is needed.
70 bool TryIntrinsify(); 69 bool TryIntrinsify();
71 70
72 void GenerateCallRuntime(intptr_t cid, 71 void GenerateCallRuntime(intptr_t cid,
73 intptr_t token_pos, 72 intptr_t token_pos,
74 intptr_t try_index, 73 intptr_t try_index,
75 const RuntimeEntry& entry); 74 const RuntimeEntry& entry);
76 75
77 // Infrastructure copied from class CodeGenerator.
78 void GenerateCall(intptr_t token_pos, 76 void GenerateCall(intptr_t token_pos,
79 intptr_t try_index, 77 intptr_t try_index,
80 const ExternalLabel* label, 78 const ExternalLabel* label,
81 PcDescriptors::Kind kind); 79 PcDescriptors::Kind kind);
82 80
83 void GenerateAssertAssignable(intptr_t cid, 81 void GenerateAssertAssignable(intptr_t cid,
84 intptr_t token_pos, 82 intptr_t token_pos,
85 intptr_t try_index, 83 intptr_t try_index,
86 const AbstractType& dst_type, 84 const AbstractType& dst_type,
87 const String& dst_name); 85 const String& dst_name);
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
315 const DeoptReasonId reason_; 313 const DeoptReasonId reason_;
316 GrowableArray<Register> registers_; 314 GrowableArray<Register> registers_;
317 Label entry_label_; 315 Label entry_label_;
318 316
319 DISALLOW_COPY_AND_ASSIGN(DeoptimizationStub); 317 DISALLOW_COPY_AND_ASSIGN(DeoptimizationStub);
320 }; 318 };
321 319
322 } // namespace dart 320 } // namespace dart
323 321
324 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_ 322 #endif // VM_FLOW_GRAPH_COMPILER_X64_H_
OLDNEW
« no previous file with comments | « runtime/vm/flow_graph_compiler_ia32.cc ('k') | runtime/vm/flow_graph_compiler_x64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698