Loads from UInt32Arrays should not result in a double up-convert if it isn't necessary
authorfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Mar 2012 22:59:43 +0000 (22:59 +0000)
committerfpizlo@apple.com <fpizlo@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 13 Mar 2012 22:59:43 +0000 (22:59 +0000)
commit691ac79f4e220e5441c16d26696faca8424c3568
tree9020c36dcd07996302f6de1613b94319a346a891
parent9d7cb3e1bf1888d9739f52deae22e9c6f10f6a86
Loads from UInt32Arrays should not result in a double up-convert if it isn't necessary
https://bugs.webkit.org/show_bug.cgi?id=80979
<rdar://problem/11036848>

Reviewed by Oliver Hunt.

Also improved DFG IR dumping to include type information in a somewhat more
intuitive way.

* bytecode/PredictedType.cpp:
(JSC::predictionToAbbreviatedString):
(JSC):
* bytecode/PredictedType.h:
(JSC):
* dfg/DFGAbstractState.cpp:
(JSC::DFG::AbstractState::execute):
* dfg/DFGGraph.cpp:
(JSC::DFG::Graph::dump):
* dfg/DFGPredictionPropagationPhase.cpp:
(JSC::DFG::PredictionPropagationPhase::propagate):
* dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileUInt32ToNumber):
(JSC::DFG::SpeculativeJIT::compileGetByValOnIntTypedArray):
* dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@110631 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/bytecode/PredictedType.cpp
Source/JavaScriptCore/bytecode/PredictedType.h
Source/JavaScriptCore/dfg/DFGAbstractState.cpp
Source/JavaScriptCore/dfg/DFGGraph.cpp
Source/JavaScriptCore/dfg/DFGPredictionPropagationPhase.cpp
Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
Source/JavaScriptCore/dfg/DFGSpeculativeJIT.h