diff options
| author | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
|---|---|---|
| committer | Simon Hausmann <simon.hausmann@digia.com> | 2012-09-18 15:53:33 +0200 |
| commit | 6bbb7fbbac94d0f511a7bd0cbd50854ab643bfb2 (patch) | |
| tree | d9c68d1cca0b3e352f1e438561f3e504e641a08f /Source/JavaScriptCore/llint/LowLevelInterpreter.asm | |
| parent | d0424a769059c84ae20beb3c217812792ea6726b (diff) | |
Imported WebKit commit c7503cef7ecb236730d1309676ab9fc723fd061d (http://svn.webkit.org/repository/webkit/trunk@128886)
New snapshot with various build fixes
Diffstat (limited to 'Source/JavaScriptCore/llint/LowLevelInterpreter.asm')
| -rw-r--r-- | Source/JavaScriptCore/llint/LowLevelInterpreter.asm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/Source/JavaScriptCore/llint/LowLevelInterpreter.asm b/Source/JavaScriptCore/llint/LowLevelInterpreter.asm index 6f5460aa7..e347ccc70 100644 --- a/Source/JavaScriptCore/llint/LowLevelInterpreter.asm +++ b/Source/JavaScriptCore/llint/LowLevelInterpreter.asm @@ -187,6 +187,20 @@ macro slowPathForCall(advance, slowPath) end) end +macro arrayProfile(structureAndIndexingType, profile, scratch) + const structure = structureAndIndexingType + const indexingType = structureAndIndexingType + if VALUE_PROFILER + storep structure, ArrayProfile::m_lastSeenStructure[profile] + loadb Structure::m_indexingType[structure], indexingType + move 1, scratch + lshifti indexingType, scratch + ori scratch, ArrayProfile::m_observedArrayModes[profile] + else + loadb Structure::m_indexingType[structure], indexingType + end +end + macro checkSwitchToJIT(increment, action) if JIT_ENABLED loadp CodeBlock[cfr], t0 @@ -896,4 +910,3 @@ _llint_op_put_by_id_transition: # Indicate the end of LLInt. _llint_end: crash() - |
