Push version 1.2.7 to trunk.

Improved debugger and profiler support.

Reduced compilation time by improving the handling of deferred code.

Optimized interceptor accesses where the property is on the object on which the interceptors is attached.

Fixed compilation problem on GCC 4.4 by changing the stack alignment to 16 bytes.

Fixed handle creation to follow stric aliasing rules.

Fixed compilation on FreeBSD.

Introduced API for forcing the deletion of a property ignoring interceptors and attributes.


git-svn-id: http://v8.googlecode.com/svn/trunk@2121 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
diff --git a/src/x64/macro-assembler-x64.h b/src/x64/macro-assembler-x64.h
index 67c7bdd..4af372a 100644
--- a/src/x64/macro-assembler-x64.h
+++ b/src/x64/macro-assembler-x64.h
@@ -33,6 +33,11 @@
 namespace v8 {
 namespace internal {
 
+// Default scratch register used by MacroAssembler (and other code that needs
+// a spare register). The register isn't callee save, and not used by the
+// function calling convention.
+static const Register kScratchRegister = r10;
+
 // Forward declaration.
 class JumpTarget;
 
@@ -137,8 +142,8 @@
   void GetBuiltinEntry(Register target, Builtins::JavaScript id);
 
   // Expression support
-  void Set(Register dst, const Immediate& x);
-  void Set(const Operand& dst, const Immediate& x);
+  void Set(Register dst, int64_t x);
+  void Set(const Operand& dst, int64_t x);
 
   // Compare object type for heap object.
   // Incoming register is heap_object and outgoing register is map.
@@ -156,7 +161,7 @@
 
   // Push a new try handler and link into try handler chain.
   // The return address must be pushed before calling this helper.
-  // On exit, eax contains TOS (next_sp).
+  // On exit, rax contains TOS (next_sp).
   void PushTryHandler(CodeLocation try_location, HandlerType type);