| Summary: | CStack: Fix 32-bit C loop LLINT. | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Mark Lam <mark.lam> | ||||
| Component: | JavaScriptCore | Assignee: | Mark Lam <mark.lam> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | CC: | fpizlo, ggaren, mhahnenberg, msaboff, oliver | ||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | Unspecified | ||||||
| OS: | Unspecified | ||||||
| Bug Depends on: | 127071 | ||||||
| Bug Blocks: | |||||||
| Attachments: |
|
||||||
|
Description
Mark Lam
2014-01-16 00:46:53 PST
Created attachment 221343 [details]
the patch.
This patch builds and passes run-javascriptcore-tests --debug --32-bit --cloop --no-jsc-stress. This is the minimum patch that will build and run the 32-bit C loop LLINT. Since the C loop is based on ARM, this patch also fixes part of the ARMv7 LLINT implementation. There is still more to do for ARM (e.g. alignment issues) but I didn’t want to overlap with the work in Michael’s patch. There is still necessarily some minimal overlap with Michael’s patch. I’ll rebase this patch after Michael’s 32-bit patch is finalized.
Comment on attachment 221343 [details] the patch. View in context: https://bugs.webkit.org/attachment.cgi?id=221343&action=review > Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm:315 > + addp 8, sp prior code didn't increment sp prior to the call, should this be in the CLOOP block? Comment on attachment 221343 [details] the patch. View in context: https://bugs.webkit.org/attachment.cgi?id=221343&action=review >> Source/JavaScriptCore/llint/LowLevelInterpreter32_64.asm:315 >> + addp 8, sp > > prior code didn't increment sp prior to the call, should this be in the CLOOP block? No, the sp adjustment (before and after the call) is needed for all 32-bit ports, and Michael’s patch will make that change. I have to make the same change here or the C loop code won’t work. Comment on attachment 221343 [details]
the patch.
r=me
Landed in r162248 on the jsCStack branch: <http://trac.webkit.org/r162248>. |