WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
29695
Unaligned data access in YARR_JIT on ARMv5 and below
https://bugs.webkit.org/show_bug.cgi?id=29695
Summary
Unaligned data access in YARR_JIT on ARMv5 and below
Gabor Loki
Reported
2009-09-23 14:18:59 PDT
On ARMv5 and below all data access should be naturally aligned. In the YARR_JIT there is a case when character pairs are loaded from the input string, but this data access is not naturally aligned.
Attachments
Fix unaligned data access in YARR_JIT on ARMv5 and below.
(10.12 KB, patch)
2009-09-23 14:20 PDT
,
Gabor Loki
no flags
Details
Formatted Diff
Diff
Fix unaligned data access in YARR_JIT on ARMv5 and below (v2)
(9.41 KB, patch)
2009-09-25 05:52 PDT
,
Gabor Loki
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Gabor Loki
Comment 1
2009-09-23 14:20:33 PDT
Created
attachment 40018
[details]
Fix unaligned data access in YARR_JIT on ARMv5 and below. This fix introduces load32WithUnalignedHalfWords and branch32WithUnalignedHalfWords functions which contain naturally aligned memory loads - half word loads - instead of simple load32 on ARMv5 and below.
Gabor Loki
Comment 2
2009-09-23 14:22:50 PDT
Opps, I forgot to paste the bug number into the ChangeLog entry.
Gavin Barraclough
Comment 3
2009-09-23 16:37:41 PDT
Comment on
attachment 40018
[details]
Fix unaligned data access in YARR_JIT on ARMv5 and below. So, the code here all looks fine, but I don't think that the ARMAssembler is really the right layer for this. The idea of the Assembler classes is that they provide the same interface as the machine instruction set, and that the MacroAssembler provides a higher level set of primitives above this. In similar cases where an operation must be constructed using multiple machine instructions we try to do so in the MacroAssembler. There are a couple of cases where this is not so, particularly where a load or branch planted over multiple instructions must be repatched, but we've started refactoring the relinking so we can hopefully we can also move these up to the MacroAssembler. So I'd prefer to see the logic in baseIndexTransfer32WithUnalignedHalfWords shift up to the MacroAssembler. Does this sound reasonable?
Ricardo Salveti de Araujo
Comment 4
2009-09-23 18:02:54 PDT
(In reply to
comment #1
)
> Created an attachment (id=40018) [details] > Fix unaligned data access in YARR_JIT on ARMv5 and below. > > This fix introduces load32WithUnalignedHalfWords and > branch32WithUnalignedHalfWords functions which contain naturally aligned memory > loads - half word loads - instead of simple load32 on ARMv5 and below.
I confirm that this patch fix the alignment trap I was having with ARMv5. Now I can successfully open google maps and other complex websites (but still with a low performance, but better than before).
Gabor Loki
Comment 5
2009-09-23 21:41:00 PDT
(In reply to
comment #3
)
> So I'd prefer to see the logic in baseIndexTransfer32WithUnalignedHalfWords > shift up to the MacroAssembler. Does this sound reasonable?
Ok, I will refactor the patch. What do you think about the name of those function? Is it fine for you? Or do you have other suggestion(s)?
Gabor Loki
Comment 6
2009-09-25 05:52:27 PDT
Created
attachment 40106
[details]
Fix unaligned data access in YARR_JIT on ARMv5 and below (v2) Updated considering Gavin's suggestions from
comment #3
.
Eric Seidel (no email)
Comment 7
2009-09-25 14:12:49 PDT
Comment on
attachment 40106
[details]
Fix unaligned data access in YARR_JIT on ARMv5 and below (v2) As far as I can tell from
http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/modules/committers.py
Gabor is not a committer. So I'm going to assume he wants this committed by someone else. Setting cq+ to let the commit bot do so.
WebKit Commit Bot
Comment 8
2009-09-25 19:27:09 PDT
Comment on
attachment 40106
[details]
Fix unaligned data access in YARR_JIT on ARMv5 and below (v2) Clearing flags on attachment: 40106 Committed
r48782
: <
http://trac.webkit.org/changeset/48782
>
WebKit Commit Bot
Comment 9
2009-09-25 19:27:13 PDT
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.
Top of Page
Format For Printing
XML
Clone This Bug