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

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

Issue 6026017: Fix/implement new write barrier for x64. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/gc/
Patch Set: '' Created 9 years, 11 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/x64/macro-assembler-x64.h
===================================================================
--- src/x64/macro-assembler-x64.h (revision 6183)
+++ src/x64/macro-assembler-x64.h (working copy)
@@ -81,13 +81,13 @@
// ---------------------------------------------------------------------------
// GC Support
-#ifdef ENABLE_CARDMARKING_WRITE_BARRIER
// For page containing |object| mark region covering |addr| dirty.
// RecordWriteHelper only works if the object is not in new
// space.
void RecordWriteHelper(Register object,
Register addr,
- Register scratch);
+ Register scratch,
+ SaveFPRegsMode save_fp);
// Check if object is in new space. The condition cc can be equal or
// not_equal. If it is equal a jump will be done if the object is on new
@@ -108,7 +108,8 @@
void RecordWrite(Register object,
int offset,
Register value,
- Register scratch);
+ Register scratch,
+ SaveFPRegsMode save_fp);
// For page containing |object| mark region covering [address]
// dirty. |object| is the object being stored into, |value| is the
@@ -117,7 +118,8 @@
// the write barrier if the value is a smi.
void RecordWrite(Register object,
Register address,
- Register value);
+ Register value,
+ SaveFPRegsMode save_fp);
// For page containing |object| mark region covering [object+offset] dirty.
// The value is known to not be a smi.
@@ -128,8 +130,8 @@
void RecordWriteNonSmi(Register object,
int offset,
Register value,
- Register scratch);
-#endif
+ Register scratch,
+ SaveFPRegsMode save_fp);
#ifdef ENABLE_DEBUGGER_SUPPORT
// ---------------------------------------------------------------------------
@@ -1650,7 +1652,6 @@
}
-#ifdef ENABLE_CARDMARKING_WRITE_BARRIER
template <typename LabelType>
void MacroAssembler::InNewSpace(Register object,
Register scratch,
@@ -1685,8 +1686,8 @@
j(cc, branch);
}
}
-#endif
+
template <typename LabelType>
void MacroAssembler::InvokePrologue(const ParameterCount& expected,
const ParameterCount& actual,

Powered by Google App Engine
This is Rietveld 408576698