WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 40231
Add native call support for ARM and Thumb-2 JIT with JSValue32
https://bugs.webkit.org/show_bug.cgi?id=40231
Summary
Add native call support for ARM and Thumb-2 JIT with JSValue32
Gabor Loki
Reported
2010-06-07 05:58:35 PDT
Currently the native call enhancement is available on x86 with JSValue32_64 and on x86_64 with JSValue64. I am going to upload a patch which adds this call support for ARM and Thumb-2 JIT as well.
Attachments
Add native call support for ARM and Thumb-2 JIT with JSValue32.
(4.74 KB, patch)
2010-06-07 06:09 PDT
,
Gabor Loki
loki
: commit-queue-
Details
Formatted Diff
Diff
Add native call support for ARM and Thumb-2 JIT
(9.94 KB, patch)
2010-06-07 06:55 PDT
,
Gabor Loki
ggaren
: review+
loki
: commit-queue-
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Gabor Loki
Comment 1
2010-06-07 06:09:33 PDT
Created
attachment 58020
[details]
Add native call support for ARM and Thumb-2 JIT with JSValue32. Same technique was used as on x86_64 with some limitations. - we cannot use regT0 for the new callframe, because r0 (=regT0) should be the first argument of the host function. - a callee preserved register should be used to hold the return address instead of the stack. - preserveReturnAddressAfterCall/restoreReturnAddressBeforeReturn functions should be used to work with return address (instead of peek/poke on stack).
WebKit Review Bot
Comment 2
2010-06-07 06:11:54 PDT
Attachment 58020
[details]
did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style', '--no-squash']" exit_code: 1 JavaScriptCore/jit/JITOpcodes.cpp:249: Extra space before ( in function call [whitespace/parens] [4] JavaScriptCore/wtf/Platform.h:973: More than one command on the same line in if [whitespace/parens] [4] Total errors found: 2 in 3 files If any of these errors are false positives, please file a bug against check-webkit-style.
Gabor Loki
Comment 3
2010-06-07 06:55:49 PDT
Created
attachment 58025
[details]
Add native call support for ARM and Thumb-2 JIT It was easy to add the native call support for JSValue32_64 as well. So, this patch contains the native call enhancement for each ARM JIT and for each supported JSValue representations.
WebKit Review Bot
Comment 4
2010-06-07 06:57:56 PDT
Attachment 58025
[details]
did not pass style-queue: Failed to run "['WebKitTools/Scripts/check-webkit-style', '--no-squash']" exit_code: 1 JavaScriptCore/wtf/Platform.h:973: More than one command on the same line in if [whitespace/parens] [4] Total errors found: 1 in 4 files If any of these errors are false positives, please file a bug against check-webkit-style.
Geoffrey Garen
Comment 5
2010-06-21 11:13:34 PDT
Comment on
attachment 58025
[details]
Add native call support for ARM and Thumb-2 JIT JavaScriptCore/jit/JITOpcodes.cpp:226 + restoreReturnAddressBeforeReturn(regT3); This implies that the link register is caller save. Is it? I thought it was callee save. r=me
Gabor Loki
Comment 6
2010-06-22 02:04:08 PDT
> + restoreReturnAddressBeforeReturn(regT3); > This implies that the link register is caller save. Is it? I thought it was callee save.
The link register (r14) is caller-save. The callee-save registers are: r4-r11.
Gabor Loki
Comment 7
2010-06-22 05:25:31 PDT
Committed revision 61614.
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