diff options
author | 2016-06-21 16:54:17 +0000 | |
---|---|---|
committer | 2016-06-21 16:54:17 +0000 | |
commit | abc9f689d35b97738401ba1981d45ab06519f3ad (patch) | |
tree | f879ccdac60c1c2130d5a740e47b0090ae0fa513 /compiler/optimizing | |
parent | 4692c35c151951aa1fa901ca24bfa302a9beeacf (diff) | |
parent | 782be11b39b4b3636e6928afc8b9bbac541a50ea (diff) |
Merge "MIPS64: Unblock callee-save registers"
Diffstat (limited to 'compiler/optimizing')
-rw-r--r-- | compiler/optimizing/code_generator_mips64.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/compiler/optimizing/code_generator_mips64.cc b/compiler/optimizing/code_generator_mips64.cc index 80d029a936..558735110a 100644 --- a/compiler/optimizing/code_generator_mips64.cc +++ b/compiler/optimizing/code_generator_mips64.cc @@ -922,13 +922,13 @@ void CodeGeneratorMIPS64::SetupBlockedRegisters() const { // TODO: review; anything else? - // TODO: remove once all the issues with register saving/restoring are sorted out. - for (size_t i = 0; i < arraysize(kCoreCalleeSaves); ++i) { - blocked_core_registers_[kCoreCalleeSaves[i]] = true; - } - - for (size_t i = 0; i < arraysize(kFpuCalleeSaves); ++i) { - blocked_fpu_registers_[kFpuCalleeSaves[i]] = true; + if (GetGraph()->IsDebuggable()) { + // Stubs do not save callee-save floating point registers. If the graph + // is debuggable, we need to deal with these registers differently. For + // now, just block them. + for (size_t i = 0; i < arraysize(kFpuCalleeSaves); ++i) { + blocked_fpu_registers_[kFpuCalleeSaves[i]] = true; + } } } |