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

Unified Diff: src/arm64/macro-assembler-arm64.h

Issue 209933003: ARM64: push/pop registers in stubs for safepoints (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 9 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
Index: src/arm64/macro-assembler-arm64.h
diff --git a/src/arm64/macro-assembler-arm64.h b/src/arm64/macro-assembler-arm64.h
index a54ed30a2b07180f7a151ab1d96975559f190353..959d01db5bdc7a3f43d30b9cfaa5ad891761868b 100644
--- a/src/arm64/macro-assembler-arm64.h
+++ b/src/arm64/macro-assembler-arm64.h
@@ -1728,8 +1728,8 @@ class MacroAssembler : public Assembler {
void PushSafepointRegisters();
void PopSafepointRegisters();
- void PushSafepointFPRegisters();
- void PopSafepointFPRegisters();
+ void PushSafepointRegistersAndDoubles();
+ void PopSafepointRegistersAndDoubles();
// Store value in register src in the safepoint stack slot for register dst.
void StoreToSafepointRegisterSlot(Register src, Register dst) {
@@ -2215,11 +2215,20 @@ class UseScratchRegisterScope {
FPRegister AcquireS() { return AcquireNextAvailable(availablefp_).S(); }
FPRegister AcquireD() { return AcquireNextAvailable(availablefp_).D(); }
+ Register Acquire(const Register& reg) {
ulan 2014/03/24 12:23:51 Please rename to UnsafeAcquire or something simila
vincent.belliard 2014/03/24 16:03:52 done
+ return AcquireFixed(available_, reg);
+ }
+ FPRegister Acquire(const FPRegister& reg) {
+ return AcquireFixed(availablefp_, reg);
ulan 2014/03/24 12:23:51 It is not used and unsafe, please remove.
vincent.belliard 2014/03/24 16:03:52 done
+ }
+
Register AcquireSameSizeAs(const Register& reg);
FPRegister AcquireSameSizeAs(const FPRegister& reg);
private:
static CPURegister AcquireNextAvailable(CPURegList* available);
+ static CPURegister AcquireFixed(CPURegList* available,
+ const CPURegister& reg);
// Available scratch registers.
CPURegList* available_; // kRegister

Powered by Google App Engine
This is Rietveld 408576698