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

Unified Diff: runtime/vm/intermediate_language_x64.cc

Issue 10696151: Skeleton of a linear scan register allocator. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 8 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: runtime/vm/intermediate_language_x64.cc
diff --git a/runtime/vm/intermediate_language_x64.cc b/runtime/vm/intermediate_language_x64.cc
index ba50319b5fd7ef0b43a8d69e7c5603b7c255d4e0..07df73031bae424bb3b3077f55e151f6254a2165 100644
--- a/runtime/vm/intermediate_language_x64.cc
+++ b/runtime/vm/intermediate_language_x64.cc
@@ -32,7 +32,7 @@ LocationSummary* Computation::MakeCallSummary() {
void BindInstr::EmitNativeCode(FlowGraphCompiler* compiler) {
computation()->EmitNativeCode(compiler);
- if (is_used() && locs()->out().kind() == Location::kRegister) {
+ if (is_used() && locs()->out().IsRegister()) {
// TODO(vegorov): this should really happen only for comparisons fused
// with branches. Currrently IR does not provide an easy way to remove
// instructions from the graph so we just leave fused comparison in it
@@ -448,7 +448,7 @@ LocationSummary* RelationalOpComp::MakeLocationSummary() const {
const intptr_t kNumTemps = 1;
LocationSummary* summary = new LocationSummary(kNumInputs,
kNumTemps,
- LocationSummary::kCall,
+ LocationSummary::kNoCall,
contains_branch);
summary->set_in(0, Location::RequiresRegister());
summary->set_in(1, Location::RequiresRegister());
@@ -1981,6 +1981,7 @@ void PolymorphicInstanceCallComp::EmitNativeCode(FlowGraphCompiler* compiler) {
__ Bind(&done);
}
+
} // namespace dart
#undef __

Powered by Google App Engine
This is Rietveld 408576698