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 43303
[Qt] Enable JIT on WinCE
https://bugs.webkit.org/show_bug.cgi?id=43303
Summary
[Qt] Enable JIT on WinCE
Patrick R. Gansterer
Reported
2010-07-31 11:47:33 PDT
Enable the JIT on Windows CE with ARM.
Attachments
Patch #1 (generate GeneratedJITStubs_MSVC.asm)
(2.25 KB, patch)
2010-07-31 11:53 PDT
,
Patrick R. Gansterer
no flags
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Patrick R. Gansterer
Comment 1
2010-07-31 11:53:06 PDT
Created
attachment 63156
[details]
Patch #1 (generate GeneratedJITStubs_MSVC.asm)
Gabor Loki
Comment 2
2010-08-03 23:55:04 PDT
Can we combine *_RVCT.h and *_MSVC.asm generation rules? I am not a qmake expert, but I feel they can be merged into a common rule.
Ismail Donmez
Comment 3
2010-08-06 09:02:29 PDT
With this patch if I enable JIT manually I got lots of unresolved functions, one example is; jscore.lib(JITCall.obj) : error LNK2019: unresolved external symbol cti_op_call_NotJSFunction referenced in function "pr ivate: void __cdecl JSC::JIT::compileOpCallVarargsSlowCase(struct JSC::Instruction *,struct JSC::SlowCaseEntry * &)" (?c ompileOpCallVarargsSlowCase@JIT@JSC@@AAAXPAUInstruction@
2@AAPAUSlowCaseEntry@2@@Z
) jscore.lib(JITCall.obj) : error LNK2019: unresolved external symbol cti_op_construct_NotJSConstruct referenced in functi on "private: void __cdecl JSC::JIT::compileOpCallSlowCase(struct JSC::Instruction *,struct JSC::SlowCaseEntry * &,unsign ed int,enum JSC::OpcodeID)" (?compileOpCallSlowCase@JIT@JSC@@AAAXPAUInstruction@
2@AAPAUSlowCaseEntry@2@IW4OpcodeID@2@@Z
)
Eric Seidel (no email)
Comment 4
2010-08-06 14:04:33 PDT
Comment on
attachment 63156
[details]
Patch #1 (generate GeneratedJITStubs_MSVC.asm) OK.
Eric Seidel (no email)
Comment 5
2010-08-06 14:05:14 PDT
Since the WinCE port doesn't have a buildbot we won't know if this breaks the world. But I leave that to you all to figure out.
Patrick R. Gansterer
Comment 6
2010-08-07 11:45:52 PDT
(In reply to
comment #3
)
> With this patch if I enable JIT manually I got lots of unresolved functions
There are "two steps" in the qt build. First: generate _all_ files Second: only _compile_ and link them. This pach now only extends the generation part (changes only DerivedSources.pro). A second patch is required to call armasm.exe with GeneratedJITStubs_MSVC.asm and then link the object file to the JavaScriptCore library. At the moment you can add the asm file like WebCore/plugins/win/PaintHooks.asm (see WebCore.pro) (In reply to
comment #5
)
> Since the WinCE port doesn't have a buildbot we won't know if this breaks the world. But I leave that to you all to figure out.
I don't think that it will break anything, because it only add an additional generater. buildbot for WinCE is an interessing topic: A few month ago I tried to run the JSC-test for the "native" WinCE port, but I had many problems with the current scripts. Do they support any sort of "cross-testing" (like cross-comiling ;-))? As far as I know all buildbots build and test on the same machine. Is that correct? (I can only cross-compile for WinCE)
Ismail Donmez
Comment 7
2010-08-07 12:19:06 PDT
(In reply to
comment #6
)
> (In reply to
comment #3
) > > With this patch if I enable JIT manually I got lots of unresolved functions > There are "two steps" in the qt build. First: generate _all_ files Second: only _compile_ and link them. > This pach now only extends the generation part (changes only DerivedSources.pro). > > A second patch is required to call armasm.exe with GeneratedJITStubs_MSVC.asm and then link the object file to the JavaScriptCore library. > > At the moment you can add the asm file like WebCore/plugins/win/PaintHooks.asm (see WebCore.pro)
Ok I'll wait for your patch #2 then, or I can create a patch and submit. Regards.
Patrick R. Gansterer
Comment 8
2010-08-07 12:32:40 PDT
(In reply to
comment #7
)
> Ok I'll wait for your patch #2 then, or I can create a patch and submit.
Maybe you can try to generate this patch. I will help you if you have any questions. A good tip is my CMake buildsystem for WinCE at
http://gitorious.org/+wincewebkit-developers/webkit/wincewebkit/blobs/wincegdi/JavaScriptCore/CMakeLists.txt#line425
The main "problem" (why I didn't post patch #2) is finding the correct "scopes" in qmake without breaking something else.
Eric Seidel (no email)
Comment 9
2010-08-07 20:25:44 PDT
Comment on
attachment 63156
[details]
Patch #1 (generate GeneratedJITStubs_MSVC.asm) Clearing flags on attachment: 63156 Committed
r64933
: <
http://trac.webkit.org/changeset/64933
>
Eric Seidel (no email)
Comment 10
2010-08-07 20:25:51 PDT
All reviewed patches have been landed. Closing bug.
Patrick R. Gansterer
Comment 11
2010-08-08 02:31:01 PDT
(In reply to
comment #10
)
> All reviewed patches have been landed. Closing bug.
Patch #2 is required too.
Eric Seidel (no email)
Comment 12
2010-08-08 08:55:47 PDT
Please open a new bug for new patches. The commit-queue will automatically close bugs when there are no more patches with r? or r+ on the bug. Bug numbers are cheap. No reason to not spend a few for easier reviewability.
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