It thinks a value that is a StringImpl is a JSString.
Created attachment 291124 [details] patch
Comment on attachment 291124 [details] patch r=me Can we have a test?
Comment on attachment 291124 [details] patch LValue lowStringIdent(Edge edge, OperandSpeculationMode mode = AutomaticOperandSpeculation) { ASSERT_UNUSED(mode, mode == ManualOperandSpeculation || edge.useKind() == StringIdentUse); LValue string = lowString(edge, mode); LValue stringImpl = m_out.loadPtr(string, m_heaps.JSString_value); speculateStringIdent(edge, string, stringImpl); return stringImpl; }
Comment on attachment 291124 [details] patch Of course that's right. I had it backwards.
Created attachment 291128 [details] patch for landing
Comment on attachment 291128 [details] patch for landing r=me on the test.
Comment on attachment 291128 [details] patch for landing Clearing flags on attachment: 291128 Committed r207017: <http://trac.webkit.org/changeset/207017>
All reviewed patches have been landed. Closing bug.