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

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

Issue 1263573010: Use zone when allocating handles in FlowGraphCompiler assembling operations. Add profiling VM tags… (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: sync Created 5 years, 4 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 | « runtime/vm/flow_graph_compiler_x64.cc ('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) 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 #ifndef VM_INTERMEDIATE_LANGUAGE_H_ 5 #ifndef VM_INTERMEDIATE_LANGUAGE_H_
6 #define VM_INTERMEDIATE_LANGUAGE_H_ 6 #define VM_INTERMEDIATE_LANGUAGE_H_
7 7
8 #include "vm/allocation.h" 8 #include "vm/allocation.h"
9 #include "vm/ast.h" 9 #include "vm/ast.h"
10 #include "vm/growable_array.h" 10 #include "vm/growable_array.h"
(...skipping 1730 matching lines...) Expand 10 before | Expand all | Expand 10 after
1741 1741
1742 // Printing support. These functions are sometimes overridden for custom 1742 // Printing support. These functions are sometimes overridden for custom
1743 // formatting. Otherwise, it prints in the format "opcode(op1, op2, op3)". 1743 // formatting. Otherwise, it prints in the format "opcode(op1, op2, op3)".
1744 virtual void PrintTo(BufferFormatter* f) const; 1744 virtual void PrintTo(BufferFormatter* f) const;
1745 virtual void PrintOperandsTo(BufferFormatter* f) const; 1745 virtual void PrintOperandsTo(BufferFormatter* f) const;
1746 1746
1747 // A value in the constant propagation lattice. 1747 // A value in the constant propagation lattice.
1748 // - non-constant sentinel 1748 // - non-constant sentinel
1749 // - a constant (any non-sentinel value) 1749 // - a constant (any non-sentinel value)
1750 // - unknown sentinel 1750 // - unknown sentinel
1751 Object& constant_value() const { return constant_value_; } 1751 Object& constant_value();
1752 1752
1753 virtual void InferRange(RangeAnalysis* analysis, Range* range); 1753 virtual void InferRange(RangeAnalysis* analysis, Range* range);
1754 1754
1755 Range* range() const { return range_; } 1755 Range* range() const { return range_; }
1756 void set_range(const Range&); 1756 void set_range(const Range&);
1757 1757
1758 // Definitions can be canonicalized only into definitions to ensure 1758 // Definitions can be canonicalized only into definitions to ensure
1759 // this check statically we override base Canonicalize with a Canonicalize 1759 // this check statically we override base Canonicalize with a Canonicalize
1760 // returning Definition (return type is covariant). 1760 // returning Definition (return type is covariant).
1761 virtual Definition* Canonicalize(FlowGraph* flow_graph); 1761 virtual Definition* Canonicalize(FlowGraph* flow_graph);
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
1794 1794
1795 Range* range_; 1795 Range* range_;
1796 CompileType* type_; 1796 CompileType* type_;
1797 1797
1798 private: 1798 private:
1799 intptr_t temp_index_; 1799 intptr_t temp_index_;
1800 intptr_t ssa_temp_index_; 1800 intptr_t ssa_temp_index_;
1801 Value* input_use_list_; 1801 Value* input_use_list_;
1802 Value* env_use_list_; 1802 Value* env_use_list_;
1803 1803
1804 Object& constant_value_; 1804 Object* constant_value_;
1805 1805
1806 DISALLOW_COPY_AND_ASSIGN(Definition); 1806 DISALLOW_COPY_AND_ASSIGN(Definition);
1807 }; 1807 };
1808 1808
1809 1809
1810 // Change a value's definition after use lists have been computed. 1810 // Change a value's definition after use lists have been computed.
1811 inline void Value::BindTo(Definition* def) { 1811 inline void Value::BindTo(Definition* def) {
1812 RemoveFromUseList(); 1812 RemoveFromUseList();
1813 set_definition(def); 1813 set_definition(def);
1814 def->AddInputUse(this); 1814 def->AddInputUse(this);
(...skipping 6284 matching lines...) Expand 10 before | Expand all | Expand 10 after
8099 LocationSummary* Name::MakeLocationSummary(Zone* zone, bool opt) const { \ 8099 LocationSummary* Name::MakeLocationSummary(Zone* zone, bool opt) const { \
8100 UNIMPLEMENTED(); \ 8100 UNIMPLEMENTED(); \
8101 return NULL; \ 8101 return NULL; \
8102 } \ 8102 } \
8103 void Name::EmitNativeCode(FlowGraphCompiler* compiler) { UNIMPLEMENTED(); } 8103 void Name::EmitNativeCode(FlowGraphCompiler* compiler) { UNIMPLEMENTED(); }
8104 8104
8105 8105
8106 } // namespace dart 8106 } // namespace dart
8107 8107
8108 #endif // VM_INTERMEDIATE_LANGUAGE_H_ 8108 #endif // VM_INTERMEDIATE_LANGUAGE_H_
OLDNEW
« no previous file with comments | « runtime/vm/flow_graph_compiler_x64.cc ('k') | runtime/vm/intermediate_language.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698