Title: [153117] trunk/Source/_javascript_Core
- Revision
- 153117
- Author
- [email protected]
- Date
- 2013-07-24 20:58:22 -0700 (Wed, 24 Jul 2013)
Log Message
fourthTier: DFG should better abstract arguments
https://bugs.webkit.org/show_bug.cgi?id=114073
Reviewed by Mark Hahnenberg.
* dfg/DFGGPRInfo.h:
(GPRInfo):
(JSC::DFG::GPRInfo::toArgumentRegister):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (153116 => 153117)
--- trunk/Source/_javascript_Core/ChangeLog 2013-07-25 03:58:20 UTC (rev 153116)
+++ trunk/Source/_javascript_Core/ChangeLog 2013-07-25 03:58:22 UTC (rev 153117)
@@ -1,3 +1,14 @@
+2013-04-05 Filip Pizlo <[email protected]>
+
+ fourthTier: DFG should better abstract arguments
+ https://bugs.webkit.org/show_bug.cgi?id=114073
+
+ Reviewed by Mark Hahnenberg.
+
+ * dfg/DFGGPRInfo.h:
+ (GPRInfo):
+ (JSC::DFG::GPRInfo::toArgumentRegister):
+
2013-07-15 Oliver Hunt <[email protected]>
Merged dfgFourthTier r147609
Modified: trunk/Source/_javascript_Core/dfg/DFGGPRInfo.h (153116 => 153117)
--- trunk/Source/_javascript_Core/dfg/DFGGPRInfo.h 2013-07-25 03:58:20 UTC (rev 153116)
+++ trunk/Source/_javascript_Core/dfg/DFGGPRInfo.h 2013-07-25 03:58:22 UTC (rev 153117)
@@ -259,6 +259,7 @@
public:
typedef GPRReg RegisterType;
static const unsigned numberOfRegisters = 5;
+ static const unsigned numberOfArgumentRegisters = NUMBER_OF_ARGUMENT_REGISTERS;
// Temporary registers.
static const GPRReg regT0 = X86Registers::eax;
@@ -321,6 +322,7 @@
public:
typedef GPRReg RegisterType;
static const unsigned numberOfRegisters = 9;
+ static const unsigned numberOfArgumentRegisters = NUMBER_OF_ARGUMENT_REGISTERS;
// These registers match the baseline JIT.
static const GPRReg cachedResultRegister = X86Registers::eax;
@@ -357,6 +359,13 @@
static const GPRReg registerForIndex[numberOfRegisters] = { regT0, regT1, regT2, regT3, regT4, regT5, regT6, regT7, regT8 };
return registerForIndex[index];
}
+
+ static GPRReg toArgumentRegister(unsigned index)
+ {
+ ASSERT(index < numberOfArgumentRegisters);
+ static const GPRReg registerForIndex[numberOfArgumentRegisters] = { argumentGPR0, argumentGPR1, argumentGPR2, argumentGPR3, argumentGPR4, argumentGPR5 };
+ return registerForIndex[index];
+ }
static unsigned toIndex(GPRReg reg)
{
@@ -394,6 +403,7 @@
public:
typedef GPRReg RegisterType;
static const unsigned numberOfRegisters = 8;
+ static const unsigned numberOfArgumentRegisters = NUMBER_OF_ARGUMENT_REGISTERS;
// Temporary registers.
static const GPRReg regT0 = ARMRegisters::r0;
@@ -467,6 +477,7 @@
public:
typedef GPRReg RegisterType;
static const unsigned numberOfRegisters = 6;
+ static const unsigned numberOfArgumentRegisters = NUMBER_OF_ARGUMENT_REGISTERS;
// Temporary registers.
static const GPRReg regT0 = MIPSRegisters::v0;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes