[Webkit-unassigned] [Bug 121710] REGRESSION(r153215): New iCloud site crashes
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Sep 20 15:00:31 PDT 2013
https://bugs.webkit.org/show_bug.cgi?id=121710
--- Comment #4 from Filip Pizlo <fpizlo at apple.com> 2013-09-20 14:59:36 PST ---
(In reply to comment #3)
> If we bring back the assertion here:
> for (m_indexInBlock = 0; m_indexInBlock < block.size(); ++m_indexInBlock) {
> m_currentNode = block[m_indexInBlock];
>
> // We may have his a contradiction that the CFA was aware of but that the JIT
> // didn't cause directly.
> if (!m_state.isValid()) {
> RELEASE_ASSERT_NOT_REACHED(); <---
> bail();
> return;
> }
>
> We hit it, implying the CFA is deciding there's a contradiction:
>
> --> capitalize#AzCeyu:<0x117848e70, bc#39, Call, known callee: Cell: 0x117c18430 (0x10a93f270: Function, NonArray), numArgs+this = 3, stack >= r12>
> 34: <!0:-> InlineStart(MustGen, bc#0)
> 35: skipped < 0:-> MovHint(@9<String>, r15(M~<String>), bc#1)
> 36: <!0:-> CheckStructure(Cell:@9<String>, MustGen|CanExit, struct(0x10a93d2f0: NonArray), bc#4)
Can you post the whole IR? I have no idea, from looking at a CheckStructure node in isolation from everything else, why there's a contradiction.
Also, to be clear, putting a RELEASE_ASSERT_NOT_REACHED() when we bail at the top of a basic block is not correct. It's fine if you're using it for your testing but it's totally OK for the CFA to decide that a basic block is unreachable. It happens a lot.
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list