RESOLVED FIXED Bug 198065
[YARR] Properly handle RegExp's that require large ParenContext space
https://bugs.webkit.org/show_bug.cgi?id=198065
Summary [YARR] Properly handle RegExp's that require large ParenContext space
Michael Saboff
Reported 2019-05-20 20:36:50 PDT
In initParenContextFreeList() we use INT16_MAX to determine if we should create a ParenContext free list. We should be using the VM::patternContextBufferSize, as that is the amount of memory we have available when executing the JIT'ed code. We should also fail the compile instead of bailing out with a jump to the JIT code failure return as this could potentially save JIT memory that could be consumed by large RegExp functions that won't execute to completion due to their ParenContext size exceeding VM::patternContextBufferSize.
Attachments
Patch (4.33 KB, patch)
2019-05-20 20:48 PDT, Michael Saboff
no flags
Updated patch in light of r245586 (3.67 KB, patch)
2019-05-24 17:59 PDT, Michael Saboff
keith_miller: review+
Michael Saboff
Comment 1 2019-05-20 20:37:00 PDT
Michael Saboff
Comment 2 2019-05-20 20:48:56 PDT
Keith Miller
Comment 3 2019-05-21 11:03:58 PDT
I already fixed this in https://trac.webkit.org/changeset/245586. You might want to make another patch for your other changes though.
Saam Barati
Comment 4 2019-05-22 13:25:05 PDT
Comment on attachment 370296 [details] Patch Clearing r? based on Keith's feedback
Michael Saboff
Comment 5 2019-05-24 17:59:55 PDT
Created attachment 370612 [details] Updated patch in light of r245586
Keith Miller
Comment 6 2019-05-28 09:55:38 PDT
Comment on attachment 370612 [details] Updated patch in light of r245586 r=me.
Michael Saboff
Comment 7 2019-05-28 10:19:11 PDT
Michael Saboff
Comment 8 2019-08-12 12:55:49 PDT
*** Bug 197536 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.