diff options
| author | 2015-10-20 11:41:49 +0000 | |
|---|---|---|
| committer | 2015-10-20 11:41:49 +0000 | |
| commit | 94e24ac0e9e2bad74e9beecbd068f2b87798b815 (patch) | |
| tree | ad07cc96f633bdae839ff2f1553d84b9c864a930 /runtime/arch/x86/context_x86.cc | |
| parent | b697c447eb61c2e14315166ec3b0d16375ae403c (diff) | |
| parent | 524e7ea8cd17bad17bd9f3e0ccbb19ad0d4d9c02 (diff) | |
Merge "Remove ArtCode."
Diffstat (limited to 'runtime/arch/x86/context_x86.cc')
| -rw-r--r-- | runtime/arch/x86/context_x86.cc | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/runtime/arch/x86/context_x86.cc b/runtime/arch/x86/context_x86.cc index 0d88dd0dc5..077d2db870 100644 --- a/runtime/arch/x86/context_x86.cc +++ b/runtime/arch/x86/context_x86.cc @@ -16,10 +16,8 @@ #include "context_x86.h" -#include "art_code.h" #include "base/bit_utils.h" #include "quick/quick_method_frame_info.h" -#include "stack.h" namespace art { namespace x86 { @@ -37,9 +35,7 @@ void X86Context::Reset() { arg0_ = 0; } -void X86Context::FillCalleeSaves(const StackVisitor& fr) { - ArtCode code = fr.GetCurrentCode(); - const QuickMethodFrameInfo frame_info = code.GetQuickFrameInfo(); +void X86Context::FillCalleeSaves(uint8_t* frame, const QuickMethodFrameInfo& frame_info) { int spill_pos = 0; // Core registers come first, from the highest down to the lowest. @@ -47,7 +43,7 @@ void X86Context::FillCalleeSaves(const StackVisitor& fr) { frame_info.CoreSpillMask() & ~(static_cast<uint32_t>(-1) << kNumberOfCpuRegisters); DCHECK_EQ(1, POPCOUNT(frame_info.CoreSpillMask() & ~core_regs)); // Return address spill. for (uint32_t core_reg : HighToLowBits(core_regs)) { - gprs_[core_reg] = fr.CalleeSaveAddress(spill_pos, frame_info.FrameSizeInBytes()); + gprs_[core_reg] = CalleeSaveAddress(frame, spill_pos, frame_info.FrameSizeInBytes()); ++spill_pos; } DCHECK_EQ(spill_pos, POPCOUNT(frame_info.CoreSpillMask()) - 1); @@ -58,9 +54,9 @@ void X86Context::FillCalleeSaves(const StackVisitor& fr) { for (uint32_t fp_reg : HighToLowBits(fp_regs)) { // Two void* per XMM register. fprs_[2 * fp_reg] = reinterpret_cast<uint32_t*>( - fr.CalleeSaveAddress(spill_pos + 1, frame_info.FrameSizeInBytes())); + CalleeSaveAddress(frame, spill_pos + 1, frame_info.FrameSizeInBytes())); fprs_[2 * fp_reg + 1] = reinterpret_cast<uint32_t*>( - fr.CalleeSaveAddress(spill_pos, frame_info.FrameSizeInBytes())); + CalleeSaveAddress(frame, spill_pos, frame_info.FrameSizeInBytes())); spill_pos += 2; } DCHECK_EQ(spill_pos, |