Summary: | LinkBuffer::linkCode() should put barrier before the constant pool after r202214 | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Csaba Osztrogonác <ossy> | ||||
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | NEW --- | ||||||
Severity: | Normal | CC: | commit-queue, fpizlo, keith_miller, mark.lam, msaboff, ossy, saam | ||||
Priority: | P2 | ||||||
Version: | Other | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Bug Depends on: | |||||||
Bug Blocks: | 159408 | ||||||
Attachments: |
|
Description
Csaba Osztrogonác
2016-07-13 03:47:30 PDT
Created attachment 283507 [details]
Patch
Comment on attachment 283507 [details]
Patch
Looks like this has been broken for several months, so a few more days makes no difference: please wait a bit for any JSC folks to object before landing. I have no clue what this patch does, except that it looks like something we shouldn't leave sitting in Bugzilla.
Csaba, can you explain what this patch does and why it's necessary? (In reply to comment #3) > Csaba, can you explain what this patch does and why it's necessary? Before the IC refactoring/optimization work we didn't need to add jump before this constant pool, because the control flow didn't run to the constant pool. But after r202214, we got the crashes can be found in the description of this bug, because instructions should be executed after ldrs. There are only nops on platforms which don't have constant pool. But platforms which have constant pool, should jump over it instead of trying to execute non valid instructions. |