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

Unified Diff: runtime/vm/deopt_instructions.cc

Issue 11956004: Fix vm code base so that it can be built for --arch=simarm (no snapshot yet). (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years, 11 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
« no previous file with comments | « runtime/vm/deopt_instructions.h ('k') | runtime/vm/disassembler_arm.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/deopt_instructions.cc
===================================================================
--- runtime/vm/deopt_instructions.cc (revision 17245)
+++ runtime/vm/deopt_instructions.cc (working copy)
@@ -1,4 +1,4 @@
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
+// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@@ -27,14 +27,14 @@
from_frame_(NULL),
from_frame_size_(0),
registers_copy_(NULL),
- xmm_registers_copy_(NULL),
+ fpu_registers_copy_(NULL),
num_args_(num_args),
deopt_reason_(deopt_reason),
isolate_(Isolate::Current()) {
from_frame_ = isolate_->deopt_frame_copy();
from_frame_size_ = isolate_->deopt_frame_copy_size();
registers_copy_ = isolate_->deopt_cpu_registers_copy();
- xmm_registers_copy_ = isolate_->deopt_xmm_registers_copy();
+ fpu_registers_copy_ = isolate_->deopt_fpu_registers_copy();
caller_fp_ = GetFromFp();
}
@@ -353,20 +353,20 @@
// Deoptimization instruction moving an XMM register.
-class DeoptXmmRegisterInstr: public DeoptInstr {
+class DeoptFpuRegisterInstr: public DeoptInstr {
public:
- explicit DeoptXmmRegisterInstr(intptr_t reg_as_int)
- : reg_(static_cast<XmmRegister>(reg_as_int)) {}
+ explicit DeoptFpuRegisterInstr(intptr_t reg_as_int)
+ : reg_(static_cast<FpuRegister>(reg_as_int)) {}
virtual intptr_t from_index() const { return static_cast<intptr_t>(reg_); }
- virtual DeoptInstr::Kind kind() const { return kXmmRegister; }
+ virtual DeoptInstr::Kind kind() const { return kFpuRegister; }
virtual const char* ToCString() const {
- return Assembler::XmmRegisterName(reg_);
+ return Assembler::FpuRegisterName(reg_);
}
void Execute(DeoptimizationContext* deopt_context, intptr_t to_index) {
- double value = deopt_context->XmmRegisterValue(reg_);
+ double value = deopt_context->FpuRegisterValue(reg_);
intptr_t* to_addr = deopt_context->GetToFrameAddressAt(to_index);
*reinterpret_cast<RawSmi**>(to_addr) = Smi::New(0);
Isolate::Current()->DeferDoubleMaterialization(
@@ -374,31 +374,31 @@
}
private:
- const XmmRegister reg_;
+ const FpuRegister reg_;
- DISALLOW_COPY_AND_ASSIGN(DeoptXmmRegisterInstr);
+ DISALLOW_COPY_AND_ASSIGN(DeoptFpuRegisterInstr);
};
-class DeoptInt64XmmRegisterInstr: public DeoptInstr {
+class DeoptInt64FpuRegisterInstr: public DeoptInstr {
public:
- explicit DeoptInt64XmmRegisterInstr(intptr_t reg_as_int)
- : reg_(static_cast<XmmRegister>(reg_as_int)) {}
+ explicit DeoptInt64FpuRegisterInstr(intptr_t reg_as_int)
+ : reg_(static_cast<FpuRegister>(reg_as_int)) {}
virtual intptr_t from_index() const { return static_cast<intptr_t>(reg_); }
- virtual DeoptInstr::Kind kind() const { return kInt64XmmRegister; }
+ virtual DeoptInstr::Kind kind() const { return kInt64FpuRegister; }
virtual const char* ToCString() const {
const char* format = "%s(m)";
intptr_t len =
- OS::SNPrint(NULL, 0, format, Assembler::XmmRegisterName(reg_));
+ OS::SNPrint(NULL, 0, format, Assembler::FpuRegisterName(reg_));
char* chars = Isolate::Current()->current_zone()->Alloc<char>(len + 1);
- OS::SNPrint(chars, len + 1, format, Assembler::XmmRegisterName(reg_));
+ OS::SNPrint(chars, len + 1, format, Assembler::FpuRegisterName(reg_));
return chars;
}
void Execute(DeoptimizationContext* deopt_context, intptr_t to_index) {
- int64_t value = deopt_context->XmmRegisterValueAsInt64(reg_);
+ int64_t value = deopt_context->FpuRegisterValueAsInt64(reg_);
intptr_t* to_addr = deopt_context->GetToFrameAddressAt(to_index);
*reinterpret_cast<RawSmi**>(to_addr) = Smi::New(0);
if (Smi::IsValid64(value)) {
@@ -411,9 +411,9 @@
}
private:
- const XmmRegister reg_;
+ const FpuRegister reg_;
- DISALLOW_COPY_AND_ASSIGN(DeoptInt64XmmRegisterInstr);
+ DISALLOW_COPY_AND_ASSIGN(DeoptInt64FpuRegisterInstr);
};
@@ -601,8 +601,8 @@
case kRetBeforeAddress: return new DeoptRetBeforeAddressInstr(from_index);
case kConstant: return new DeoptConstantInstr(from_index);
case kRegister: return new DeoptRegisterInstr(from_index);
- case kXmmRegister: return new DeoptXmmRegisterInstr(from_index);
- case kInt64XmmRegister: return new DeoptInt64XmmRegisterInstr(from_index);
+ case kFpuRegister: return new DeoptFpuRegisterInstr(from_index);
+ case kInt64FpuRegister: return new DeoptInt64FpuRegisterInstr(from_index);
case kPcMarker: return new DeoptPcMarkerInstr(from_index);
case kCallerFp: return new DeoptCallerFpInstr();
case kCallerPc: return new DeoptCallerPcInstr();
@@ -705,12 +705,12 @@
deopt_instr = new DeoptConstantInstr(object_table_index);
} else if (from_loc.IsRegister()) {
deopt_instr = new DeoptRegisterInstr(from_loc.reg());
- } else if (from_loc.IsXmmRegister()) {
+ } else if (from_loc.IsFpuRegister()) {
if (from_loc.representation() == Location::kDouble) {
- deopt_instr = new DeoptXmmRegisterInstr(from_loc.xmm_reg());
+ deopt_instr = new DeoptFpuRegisterInstr(from_loc.fpu_reg());
} else {
ASSERT(from_loc.representation() == Location::kMint);
- deopt_instr = new DeoptInt64XmmRegisterInstr(from_loc.xmm_reg());
+ deopt_instr = new DeoptInt64FpuRegisterInstr(from_loc.fpu_reg());
}
} else if (from_loc.IsStackSlot()) {
intptr_t from_index = (from_loc.stack_index() < 0) ?
« no previous file with comments | « runtime/vm/deopt_instructions.h ('k') | runtime/vm/disassembler_arm.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698