diff options
author | 2016-09-05 18:12:13 +0000 | |
---|---|---|
committer | 2016-09-05 18:12:13 +0000 | |
commit | 86dc59ebe25cfe36d4edb39c2b7b2653f079448b (patch) | |
tree | 446d80551ab72701914ed08ac18fcaeffd6555b1 /compiler/optimizing/intrinsics_x86.cc | |
parent | b0f443217306b8a307f73d35cb27c1cac2e1c360 (diff) | |
parent | 70e97462116a47ef2e582ea29a037847debcc029 (diff) |
Merge "Avoid excessive spill slots for slow paths."
Diffstat (limited to 'compiler/optimizing/intrinsics_x86.cc')
-rw-r--r-- | compiler/optimizing/intrinsics_x86.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/optimizing/intrinsics_x86.cc b/compiler/optimizing/intrinsics_x86.cc index ef4d0f1d2e..d17f85ec8d 100644 --- a/compiler/optimizing/intrinsics_x86.cc +++ b/compiler/optimizing/intrinsics_x86.cc @@ -1976,6 +1976,9 @@ static void CreateIntIntIntToIntLocations(ArenaAllocator* arena, LocationSummary::kCallOnSlowPath : LocationSummary::kNoCall, kIntrinsified); + if (can_call && kUseBakerReadBarrier) { + locations->SetCustomSlowPathCallerSaves(RegisterSet()); // No caller-save registers. + } locations->SetInAt(0, Location::NoLocation()); // Unused receiver. locations->SetInAt(1, Location::RequiresRegister()); locations->SetInAt(2, Location::RequiresRegister()); |