DFGOperands should be moved out of the DFG and into bytecode
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 25 Mar 2012 23:35:07 +0000 (23:35 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 25 Mar 2012 23:35:07 +0000 (23:35 +0000)
https://bugs.webkit.org/show_bug.cgi?id=82151

Reviewed by Dan Bernstein.

* GNUmakefile.list.am:
* JavaScriptCore.xcodeproj/project.pbxproj:
* bytecode/Operands.h: Copied from Source/JavaScriptCore/dfg/DFGOperands.h.
* dfg/DFGBasicBlock.h:
* dfg/DFGNode.h:
* dfg/DFGOSREntry.h:
* dfg/DFGOSRExit.h:
* dfg/DFGOperands.h: Removed.
* dfg/DFGVariableAccessData.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@112039 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/GNUmakefile.list.am
Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
Source/JavaScriptCore/bytecode/Operands.h [moved from Source/JavaScriptCore/dfg/DFGOperands.h with 95% similarity]
Source/JavaScriptCore/dfg/DFGBasicBlock.h
Source/JavaScriptCore/dfg/DFGNode.h
Source/JavaScriptCore/dfg/DFGOSREntry.h
Source/JavaScriptCore/dfg/DFGOSRExit.h
Source/JavaScriptCore/dfg/DFGVariableAccessData.h

index e51f7b0ec641d971a35ec9c3de6d0826618a35f0..b4133f1f34dfeeeb07b9b102bd0ae032a81e1608 100644 (file)
@@ -1,3 +1,20 @@
+2012-03-25  Filip Pizlo  <fpizlo@apple.com>
+
+        DFGOperands should be moved out of the DFG and into bytecode
+        https://bugs.webkit.org/show_bug.cgi?id=82151
+
+        Reviewed by Dan Bernstein.
+
+        * GNUmakefile.list.am:
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+        * bytecode/Operands.h: Copied from Source/JavaScriptCore/dfg/DFGOperands.h.
+        * dfg/DFGBasicBlock.h:
+        * dfg/DFGNode.h:
+        * dfg/DFGOSREntry.h:
+        * dfg/DFGOSRExit.h:
+        * dfg/DFGOperands.h: Removed.
+        * dfg/DFGVariableAccessData.h:
+
 2012-03-24  Filip Pizlo  <fpizlo@apple.com>
 
         DFG 64-bit Branch implementation should not be creating a JSValueOperand that
index 7610289faba9a2aa1842bdeb62acce1b3bdd86eb..dd1118dec87af830b2cf3d32da72c483c9acf5e5 100644 (file)
@@ -117,6 +117,7 @@ javascriptcore_sources += \
        Source/JavaScriptCore/bytecode/MethodOfGettingAValueProfile.h \
        Source/JavaScriptCore/bytecode/Opcode.cpp \
        Source/JavaScriptCore/bytecode/Opcode.h \
+       Source/JavaScriptCore/bytecode/Operands.h \
        Source/JavaScriptCore/bytecode/PolymorphicPutByIdList.cpp \
        Source/JavaScriptCore/bytecode/PolymorphicPutByIdList.h \
        Source/JavaScriptCore/bytecode/PredictedType.cpp \
@@ -175,7 +176,6 @@ javascriptcore_sources += \
        Source/JavaScriptCore/dfg/DFGAdjacencyList.h \
        Source/JavaScriptCore/dfg/DFGNodeType.h \
        Source/JavaScriptCore/dfg/DFGEdge.h \
-       Source/JavaScriptCore/dfg/DFGOperands.h \
        Source/JavaScriptCore/dfg/DFGOperations.cpp \
        Source/JavaScriptCore/dfg/DFGOperations.h \
        Source/JavaScriptCore/dfg/DFGOSREntry.cpp \
index c5bdf3b7e4c49cd8ab8155ae05c1502b3cd62ac3..7ad9743adff293f6fac1052cffb5d7bfb04a2858 100644 (file)
@@ -74,6 +74,7 @@
                0F242DA713F3B1E8007ADD4C /* WeakReferenceHarvester.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F242DA513F3B1BB007ADD4C /* WeakReferenceHarvester.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F2BDC15151C5D4D00CD8910 /* DFGFixupPhase.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2BDC12151C5D4A00CD8910 /* DFGFixupPhase.cpp */; };
                0F2BDC16151C5D4F00CD8910 /* DFGFixupPhase.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC13151C5D4A00CD8910 /* DFGFixupPhase.h */; settings = {ATTRIBUTES = (Private, ); }; };
+               0F2BDC2C151FDE9100CD8910 /* Operands.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2BDC2B151FDE8B00CD8910 /* Operands.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F2C556F14738F3100121E4F /* DFGCodeBlocks.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F2C556E14738F2E00121E4F /* DFGCodeBlocks.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F2C557014738F3500121E4F /* DFGCodeBlocks.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F2C556D14738F2E00121E4F /* DFGCodeBlocks.cpp */; };
                0F426A481460CBB300131F8F /* ValueRecovery.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F426A451460CBAB00131F8F /* ValueRecovery.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F56A1D515001CF4002992B1 /* ExecutionCounter.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0F56A1D415001CF2002992B1 /* ExecutionCounter.cpp */; };
                0F5F08CF146C7633000472A9 /* UnconditionalFinalizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5F08CE146C762F000472A9 /* UnconditionalFinalizer.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F620174143FCD330068B77C /* DFGVariableAccessData.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F620172143FCD2F0068B77C /* DFGVariableAccessData.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               0F620175143FCD370068B77C /* DFGOperands.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F620171143FCD2F0068B77C /* DFGOperands.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F620176143FCD3B0068B77C /* DFGBasicBlock.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F620170143FCD2F0068B77C /* DFGBasicBlock.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F620177143FCD3F0068B77C /* DFGAbstractValue.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F62016F143FCD2F0068B77C /* DFGAbstractValue.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F620178143FCD440068B77C /* DFGAbstractState.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F62016E143FCD2F0068B77C /* DFGAbstractState.h */; settings = {ATTRIBUTES = (Private, ); }; };
                0F242DA513F3B1BB007ADD4C /* WeakReferenceHarvester.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WeakReferenceHarvester.h; sourceTree = "<group>"; };
                0F2BDC12151C5D4A00CD8910 /* DFGFixupPhase.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = DFGFixupPhase.cpp; path = dfg/DFGFixupPhase.cpp; sourceTree = "<group>"; };
                0F2BDC13151C5D4A00CD8910 /* DFGFixupPhase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGFixupPhase.h; path = dfg/DFGFixupPhase.h; sourceTree = "<group>"; };
+               0F2BDC2B151FDE8B00CD8910 /* Operands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Operands.h; sourceTree = "<group>"; };
                0F2C556D14738F2E00121E4F /* DFGCodeBlocks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = DFGCodeBlocks.cpp; sourceTree = "<group>"; };
                0F2C556E14738F2E00121E4F /* DFGCodeBlocks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DFGCodeBlocks.h; sourceTree = "<group>"; };
                0F426A451460CBAB00131F8F /* ValueRecovery.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ValueRecovery.h; sourceTree = "<group>"; };
                0F62016E143FCD2F0068B77C /* DFGAbstractState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGAbstractState.h; path = dfg/DFGAbstractState.h; sourceTree = "<group>"; };
                0F62016F143FCD2F0068B77C /* DFGAbstractValue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGAbstractValue.h; path = dfg/DFGAbstractValue.h; sourceTree = "<group>"; };
                0F620170143FCD2F0068B77C /* DFGBasicBlock.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGBasicBlock.h; path = dfg/DFGBasicBlock.h; sourceTree = "<group>"; };
-               0F620171143FCD2F0068B77C /* DFGOperands.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGOperands.h; path = dfg/DFGOperands.h; sourceTree = "<group>"; };
                0F620172143FCD2F0068B77C /* DFGVariableAccessData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGVariableAccessData.h; path = dfg/DFGVariableAccessData.h; sourceTree = "<group>"; };
                0F66E16814DF3F1300B7B2E4 /* DFGAdjacencyList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGAdjacencyList.h; path = dfg/DFGAdjacencyList.h; sourceTree = "<group>"; };
                0F66E16914DF3F1300B7B2E4 /* DFGEdge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DFGEdge.h; path = dfg/DFGEdge.h; sourceTree = "<group>"; };
                                0F66E16814DF3F1300B7B2E4 /* DFGAdjacencyList.h */,
                                0FA581B9150E952A00B9A2D9 /* DFGNodeType.h */,
                                0F66E16914DF3F1300B7B2E4 /* DFGEdge.h */,
-                               0F620171143FCD2F0068B77C /* DFGOperands.h */,
                                86EC9DBF1328DF82002B2AD7 /* DFGOperations.cpp */,
                                86EC9DC01328DF82002B2AD7 /* DFGOperations.h */,
                                0FD82E52141DAEDE00179C94 /* DFGOSREntry.cpp */,
                                0FB5467614F59AD1002C2989 /* LazyOperandValueProfile.h */,
                                0F21C27E14BEAA8000ADC64B /* BytecodeConventions.h */,
                                0F0FC45814BD15F100B81154 /* LLIntCallLinkInfo.h */,
+                               0F2BDC2B151FDE8B00CD8910 /* Operands.h */,
                                0F9FC8BF14E1B5FB00D52AE0 /* PolymorphicPutByIdList.cpp */,
                                0F9FC8C014E1B5FB00D52AE0 /* PolymorphicPutByIdList.h */,
                                0F9FC8C114E1B5FB00D52AE0 /* PutKind.h */,
                                86EC9DC81328DF82002B2AD7 /* DFGGraph.h in Headers */,
                                86EC9DCC1328DF82002B2AD7 /* DFGJITCompiler.h in Headers */,
                                86ECA3EA132DEF1C002B2AD7 /* DFGNode.h in Headers */,
-                               0F620175143FCD370068B77C /* DFGOperands.h in Headers */,
                                86EC9DD01328DF82002B2AD7 /* DFGOperations.h in Headers */,
                                0FD82E57141DAF1000179C94 /* DFGOSREntry.h in Headers */,
                                0FC0976A1468A6F700CF2442 /* DFGOSRExit.h in Headers */,
                                0FA581BB150E953000B9A2D9 /* DFGNodeFlags.h in Headers */,
                                0FA581BC150E953000B9A2D9 /* DFGNodeType.h in Headers */,
                                0F2BDC16151C5D4F00CD8910 /* DFGFixupPhase.h in Headers */,
+                               0F2BDC2C151FDE9100CD8910 /* Operands.h in Headers */,
                        );
                        runOnlyForDeploymentPostprocessing = 0;
                };
similarity index 95%
rename from Source/JavaScriptCore/dfg/DFGOperands.h
rename to Source/JavaScriptCore/bytecode/Operands.h
index 9ce43119c5e95cb2dcda775dbd8405d5a66107a9..34718f260a855897b8b43ad2a6e54846016700ac 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2011 Apple Inc. All rights reserved.
+ * Copyright (C) 2011, 2012 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
  */
 
-#ifndef DFGOperands_h
-#define DFGOperands_h
-
-#include <wtf/Platform.h>
-
-#if ENABLE(DFG_JIT)
+#ifndef Operands_h
+#define Operands_h
 
 #include "CallFrame.h"
 #include <wtf/Vector.h>
 
-namespace JSC { namespace DFG {
+namespace JSC {
 
 // argument 0 is 'this'.
 inline bool operandIsArgument(int operand) { return operand < 0; }
@@ -157,9 +153,7 @@ void dumpOperands(Operands<T, Traits>& operands, FILE* out)
     }
 }
 
-} } // namespace JSC::DFG
-
-#endif // ENABLE(DFG_JIT)
+} // namespace JSC
 
-#endif // DFGOperands_h
+#endif // Operands_h
 
index 1c890b498316b4fce8e67ca0c31fe909cdbeb3b4..92df58d094037eca4568e99cd46cff07c4ba789a 100644 (file)
@@ -30,7 +30,7 @@
 
 #include "DFGAbstractValue.h"
 #include "DFGNode.h"
-#include "DFGOperands.h"
+#include "Operands.h"
 #include <wtf/OwnPtr.h>
 #include <wtf/Vector.h>
 
index 86017211734206991b0050e5202fe3e3485790fa..418ad1d369f61336690b147d293a3385174364b7 100644 (file)
@@ -36,9 +36,9 @@
 #include "DFGCommon.h"
 #include "DFGNodeFlags.h"
 #include "DFGNodeType.h"
-#include "DFGOperands.h"
 #include "DFGVariableAccessData.h"
 #include "JSValue.h"
+#include "Operands.h"
 #include "PredictedType.h"
 #include "ValueProfile.h"
 
index e38a6ceb95092087ccd6ce3e9f513f7e285fb54f..a5c264cd6f45533c834e64beb6374524d83f9449 100644 (file)
@@ -27,7 +27,7 @@
 #define DFGOSREntry_h
 
 #include "DFGAbstractValue.h"
-#include "DFGOperands.h"
+#include "Operands.h"
 #include <wtf/BitVector.h>
 
 namespace JSC {
index c28f7cbef38c5036d5b3ec4cb444b91558ea1c60..af0fdef4de809028a1a2759d7c4f749ce73cd4e2 100644 (file)
@@ -35,9 +35,9 @@
 #include "DFGCorrectableJumpPoint.h"
 #include "DFGExitProfile.h"
 #include "DFGGPRInfo.h"
-#include "DFGOperands.h"
 #include "MacroAssembler.h"
 #include "MethodOfGettingAValueProfile.h"
+#include "Operands.h"
 #include "ValueProfile.h"
 #include "ValueRecovery.h"
 #include <wtf/Vector.h>
index 4c69cccfdf9af4e40b3126c3bd9bf12f57703167..3eb371707ac141983d807096289ddfe1fa020bb5 100644 (file)
@@ -27,7 +27,7 @@
 #define DFGVariableAccessData_h
 
 #include "DFGNodeFlags.h"
-#include "DFGOperands.h"
+#include "Operands.h"
 #include "PredictedType.h"
 #include "VirtualRegister.h"
 #include <wtf/Platform.h>