Sfoglia il codice sorgente

bug fix for ES5 Array

Lei Shi 9 anni fa
parent
commit
4fe784767f

+ 3 - 3
lib/Runtime/Base/ScriptContext.cpp

@@ -4558,17 +4558,17 @@ void ScriptContext::RegisterPrototypeChainEnsuredToHaveOnlyWritableDataPropertie
 
     intptr_t ScriptContext::GetArraySetElementFastPathVtableAddr() const
     {
-        return optimizationOverrides.GetArraySetElementFastPathVtable();
+        return optimizationOverrides.GetArraySetElementFastPathVtableAddr();
     }
 
     intptr_t ScriptContext::GetIntArraySetElementFastPathVtableAddr() const
     {
-        return optimizationOverrides.GetIntArraySetElementFastPathVtable();
+        return optimizationOverrides.GetIntArraySetElementFastPathVtableAddr();
     }
 
     intptr_t ScriptContext::GetFloatArraySetElementFastPathVtableAddr() const
     {
-        return optimizationOverrides.GetFloatArraySetElementFastPathVtable();
+        return optimizationOverrides.GetFloatArraySetElementFastPathVtableAddr();
     }
 
     intptr_t ScriptContext::GetBuiltinFunctionsBaseAddr() const

+ 8 - 2
lib/Runtime/Base/ScriptContextOptimizationOverrideInfo.cpp

@@ -207,18 +207,24 @@ ScriptContextOptimizationOverrideInfo::DisableArraySetElementFastPath()
 
 INT_PTR
 ScriptContextOptimizationOverrideInfo::GetArraySetElementFastPathVtable() const
+{
+    return arraySetElementFastPathVtable;
+}
+
+INT_PTR
+ScriptContextOptimizationOverrideInfo::GetArraySetElementFastPathVtableAddr() const
 {
     return (INT_PTR)&arraySetElementFastPathVtable;
 }
 
 INT_PTR
-ScriptContextOptimizationOverrideInfo::GetIntArraySetElementFastPathVtable() const
+ScriptContextOptimizationOverrideInfo::GetIntArraySetElementFastPathVtableAddr() const
 {
     return (INT_PTR)&intArraySetElementFastPathVtable;
 }
 
 INT_PTR
-ScriptContextOptimizationOverrideInfo::GetFloatArraySetElementFastPathVtable() const
+ScriptContextOptimizationOverrideInfo::GetFloatArraySetElementFastPathVtableAddr() const
 {
     return (INT_PTR)&floatArraySetElementFastPathVtable;
 }

+ 3 - 2
lib/Runtime/Base/ScriptContextOptimizationOverrideInfo.h

@@ -25,8 +25,9 @@ public:
     bool IsEnabledArraySetElementFastPath() const;
     void DisableArraySetElementFastPath();
     INT_PTR GetArraySetElementFastPathVtable() const;
-    INT_PTR GetIntArraySetElementFastPathVtable() const;
-    INT_PTR GetFloatArraySetElementFastPathVtable() const;
+    INT_PTR GetArraySetElementFastPathVtableAddr() const;
+    INT_PTR GetIntArraySetElementFastPathVtableAddr() const;
+    INT_PTR GetFloatArraySetElementFastPathVtableAddr() const;
     void * GetAddressOfArraySetElementFastPathVtable();
     void * GetAddressOfIntArraySetElementFastPathVtable();
     void * GetAddressOfFloatArraySetElementFastPathVtable();