summaryrefslogtreecommitdiff
path: root/compiler/optimizing
diff options
context:
space:
mode:
author Treehugger Robot <treehugger-gerrit@google.com> 2016-06-21 16:54:17 +0000
committer Gerrit Code Review <noreply-gerritcodereview@google.com> 2016-06-21 16:54:17 +0000
commitabc9f689d35b97738401ba1981d45ab06519f3ad (patch)
treef879ccdac60c1c2130d5a740e47b0090ae0fa513 /compiler/optimizing
parent4692c35c151951aa1fa901ca24bfa302a9beeacf (diff)
parent782be11b39b4b3636e6928afc8b9bbac541a50ea (diff)
Merge "MIPS64: Unblock callee-save registers"
Diffstat (limited to 'compiler/optimizing')
-rw-r--r--compiler/optimizing/code_generator_mips64.cc14
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;
+ }
}
}