JavaScriptCore:
[WebKit.git] / JavaScriptCore / VM / CodeGenerator.h
index 805355e86c0b1dcef5f4abcca913517c4f433686..87d558a0f335e683c553005b8ef587dea0bb0c57 100644 (file)
@@ -116,6 +116,8 @@ namespace KJS {
         // the next instruction may overwrite it.
         RegisterID* newTemporary();
 
+        RegisterID* highestUsedRegister();
+
         // The same as newTemporary(), but this function returns "suggestion" if
         // "suggestion" is a temporary. This function is helpful in situations
         // where you've put "suggestion" in a RefPtr, but you'd like to allow
@@ -248,12 +250,12 @@ namespace KJS {
         RegisterID* emitPutGetter(RegisterID* base, const Identifier& property, RegisterID* value);
         RegisterID* emitPutSetter(RegisterID* base, const Identifier& property, RegisterID* value);
 
-        RegisterID* emitCall(RegisterID*, RegisterID*, RegisterID*, ArgumentsNode*);
-        RegisterID* emitCallEval(RegisterID*, RegisterID*, RegisterID*, ArgumentsNode*);
+        RegisterID* emitCall(RegisterID* dst, RegisterID* func, RegisterID* base, ArgumentsNode*);
+        RegisterID* emitCallEval(RegisterID* dst, RegisterID* func, RegisterID* base, ArgumentsNode*);
         RegisterID* emitReturn(RegisterID*);
-        RegisterID* emitEnd(RegisterID*);
+        RegisterID* emitEnd(RegisterID* dst);
 
-        RegisterID* emitConstruct(RegisterID*, RegisterID*, ArgumentsNode*);
+        RegisterID* emitConstruct(RegisterID* dst, RegisterID* func, ArgumentsNode*);
 
         PassRefPtr<LabelID> emitLabel(LabelID*);
         PassRefPtr<LabelID> emitJump(LabelID* target);