Bug 109050

Summary: Invalid code is generated for storing constants with baseindex addressing modes on ARM traditional.
Product: WebKit Reporter: Zoltan Herczeg <zherczeg>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, fpizlo, laszlo.gombos, oliver, ossy, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 108645    
Attachments:
Description Flags
patch
none
improved patch none

Zoltan Herczeg
Reported 2013-02-06 07:12:52 PST
S1 scratch register, which should hold the constant value, is reused during the process. Fix attached.
Attachments
patch (2.14 KB, patch)
2013-02-06 07:17 PST, Zoltan Herczeg
no flags
improved patch (2.54 KB, patch)
2013-02-07 06:45 PST, Zoltan Herczeg
no flags
Zoltan Herczeg
Comment 1 2013-02-06 07:17:12 PST
Zoltan Herczeg
Comment 2 2013-02-06 07:18:27 PST
If we ever need bigger offsets, we can do that with a sequence of add/sub instructions. It will not be effective, but at least it will work.
Zoltan Herczeg
Comment 3 2013-02-07 06:45:27 PST
Created attachment 187090 [details] improved patch Patch without assert.
Zoltan Herczeg
Comment 4 2013-02-07 06:46:31 PST
Oliver, could you review it?
WebKit Review Bot
Comment 5 2013-02-07 10:05:43 PST
Comment on attachment 187090 [details] improved patch Clearing flags on attachment: 187090 Committed r142146: <http://trac.webkit.org/changeset/142146>
WebKit Review Bot
Comment 6 2013-02-07 10:05:47 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.