Bug 96175 - JSC: Implement llint support on the Windows port
Summary: JSC: Implement llint support on the Windows port
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mark Lam
URL:
Keywords:
Depends on: 96127
Blocks:
  Show dependency treegraph
 
Reported: 2012-09-07 22:03 PDT by Mark Lam
Modified: 2012-09-18 01:04 PDT (History)
15 users (show)

See Also:


Attachments
Work in progress 1: Seems to build LLIntAssembly.h successfully. (50.49 KB, patch)
2012-09-07 22:27 PDT, Mark Lam
no flags Details | Formatted Diff | Diff
Example of a generated LLIntAssembly.h for the llint C++ backend. (452.72 KB, application/octet-stream)
2012-09-07 22:51 PDT, Mark Lam
no flags Details
Example of a generated LLIntDesiredOffsets.h. (3.59 MB, application/octet-stream)
2012-09-07 22:53 PDT, Mark Lam
no flags Details
Windows port seems to build now. Let's try it on the EWS. (62.29 KB, patch)
2012-09-08 10:26 PDT, Mark Lam
webkit-ews: commit-queue-
Details | Formatted Diff | Diff
A much cleaner patch that forces the llint C++ backend only on the Windows port. (30.60 KB, patch)
2012-09-11 16:34 PDT, Mark Lam
buildbot: commit-queue-
Details | Formatted Diff | Diff
work in progress 4: fixed the 2 issues that broke the last ews try. (46.20 KB, patch)
2012-09-11 21:34 PDT, Mark Lam
no flags Details | Formatted Diff | Diff
work in progress 5: cleaned up, and svn up'ed. (28.61 KB, patch)
2012-09-15 23:51 PDT, Mark Lam
no flags Details | Formatted Diff | Diff
Fix. (30.73 KB, patch)
2012-09-16 23:36 PDT, Mark Lam
ggaren: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Lam 2012-09-07 22:03:19 PDT
Need llint support on the Windows port.
Comment 1 Mark Lam 2012-09-07 22:27:39 PDT
Created attachment 162941 [details]
Work in progress 1: Seems to build LLIntAssembly.h successfully.

Unfortunately, LowLevelInterpreter.cpp doesn't build on MSVC.  Will need to investigate that next.
Comment 2 Mark Lam 2012-09-07 22:51:43 PDT
Created attachment 162944 [details]
Example of a generated LLIntAssembly.h for the llint C++ backend.
Comment 3 Mark Lam 2012-09-07 22:53:18 PDT
Created attachment 162945 [details]
Example of a generated LLIntDesiredOffsets.h.
Comment 4 Mark Lam 2012-09-08 10:26:42 PDT
Created attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.
Comment 5 WebKit Review Bot 2012-09-08 10:30:07 PDT
Attachment 162960 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/ChangeLog', u'Source..." exit_code: 1
Source/WTF/wtf/UnusedParam.h:40:  Missing spaces around &&  [whitespace/operators] [3]
Total errors found: 1 in 25 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 6 Early Warning System Bot 2012-09-08 10:44:39 PDT
Comment on attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.

Attachment 162960 [details] did not pass qt-ews (qt):
Output: http://queues.webkit.org/results/13785997
Comment 7 Early Warning System Bot 2012-09-08 10:48:11 PDT
Comment on attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.

Attachment 162960 [details] did not pass qt-wk2-ews (qt):
Output: http://queues.webkit.org/results/13802124
Comment 8 Build Bot 2012-09-08 10:51:50 PDT
Comment on attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.

Attachment 162960 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/13798252
Comment 9 Gyuyoung Kim 2012-09-08 10:52:51 PDT
Comment on attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.

Attachment 162960 [details] did not pass efl-ews (efl):
Output: http://queues.webkit.org/results/13800230
Comment 10 kov's GTK+ EWS bot 2012-09-08 11:52:52 PDT
Comment on attachment 162960 [details]
Windows port seems to build now. Let's try it on the EWS.

Attachment 162960 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/13787000
Comment 11 Mark Lam 2012-09-11 16:34:40 PDT
Created attachment 163477 [details]
A much cleaner patch that forces the llint C++ backend only on the Windows port.

Let's test this against the ews bots.
Comment 12 Build Bot 2012-09-11 17:49:46 PDT
Comment on attachment 163477 [details]
A much cleaner patch that forces the llint C++ backend only on the Windows port.

Attachment 163477 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/13811769
Comment 13 kov's GTK+ EWS bot 2012-09-11 19:06:25 PDT
Comment on attachment 163477 [details]
A much cleaner patch that forces the llint C++ backend only on the Windows port.

Attachment 163477 [details] did not pass gtk-ews (gtk):
Output: http://queues.webkit.org/results/13806971
Comment 14 Mark Lam 2012-09-11 21:34:56 PDT
Created attachment 163514 [details]
work in progress 4: fixed the 2 issues that broke the last ews try.
Comment 15 WebKit Review Bot 2012-09-11 21:37:47 PDT
Attachment 163514 [details] did not pass style-queue:

Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/JavaScriptCore/JavaScriptCore.vcpro..." exit_code: 1
Source/JavaScriptCore/bytecode/Opcode.h:42:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 1 in 18 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 16 Mark Lam 2012-09-15 23:51:56 PDT
Created attachment 164310 [details]
work in progress 5: cleaned up, and svn up'ed.
Comment 17 Mark Lam 2012-09-16 23:36:28 PDT
Created attachment 164344 [details]
Fix.
Comment 18 Geoffrey Garen 2012-09-17 09:42:41 PDT
Comment on attachment 164344 [details]
Fix.

View in context: https://bugs.webkit.org/attachment.cgi?id=164344&action=review

r=me

> Source/JavaScriptCore/JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcproj:12
> +		<Platform
> +			Name="Win32"
> +		/>

Does this specifically exclude Win64?
Comment 19 Mark Lam 2012-09-17 09:47:08 PDT
(In reply to comment #18)
> > Source/JavaScriptCore/JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcproj:12
> > +		<Platform
> > +			Name="Win32"
> > +		/>
> 
> Does this specifically exclude Win64?

I think yes.  But I didn't add this.  It is simply inherited (copied from) from the rest of the project.  This may have to be revised when/if Win64 support is added.
Comment 20 Mark Lam 2012-09-17 10:03:59 PDT
Committed r128771: <http://trac.webkit.org/changeset/128771>.
Comment 21 Csaba Osztrogonác 2012-09-17 10:19:31 PDT
(In reply to comment #20)
> Committed r128771: <http://trac.webkit.org/changeset/128771>.

It broke my git.webkit.org repository:

$ git status
# On branch master
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   Source/JavaScriptCore/JavaScriptCore.vcproj/LLIntAssembly/LLIntAssembly.vcproj
#       modified:   Source/JavaScriptCore/JavaScriptCore.vcproj/LLIntDesiredOffsets/LLIntDesiredOffsets.vcproj
#       modified:   Source/JavaScriptCore/JavaScriptCore.vcproj/LLIntOffsetsExtractor/LLIntOffsetsExtractor.vcproj
#
no changes added to commit (use "git add" and/or "git commit -a")

git checkout ... or git reset --hard HEAD can't fix it.
Have you got any idea what is this problem?
Comment 22 Csaba Osztrogonác 2012-09-17 10:35:31 PDT
... and it killed Qt,GTK,EFL EWS bots with same error.
I cc-ed other guys, maybe you any idea what happens.
Comment 23 Csaba Osztrogonác 2012-09-17 10:46:33 PDT
I think I got the problem. The old vcproj files has the following svn property:
"Property svn:eol-style set to native", but the problematic 3 files don't.
Comment 24 Mark Lam 2012-09-17 10:48:28 PDT
(In reply to comment #23)
> I think I got the problem. The old vcproj files has the following svn property:
> "Property svn:eol-style set to native", but the problematic 3 files don't.

OK, I'll undo the commit, and re-apply to see if that helps.
Comment 25 Csaba Osztrogonác 2012-09-17 10:59:44 PDT
I filed a new bug report to find a general fix for this problem - https://bugs.webkit.org/show_bug.cgi?id=96934
Comment 26 Mark Lam 2012-09-17 11:02:14 PDT
(In reply to comment #24)
> (In reply to comment #23)
> > I think I got the problem. The old vcproj files has the following svn property:
> > "Property svn:eol-style set to native", but the problematic 3 files don't.
> 
> OK, I'll undo the commit, and re-apply to see if that helps.

Set svn:eol-style to native in r128777: <http://trac.webkit.org/changeset/128777>.
Comment 27 Brent Fulgham 2012-09-17 21:28:27 PDT
This change broke the WinCairo build bot.  I'll try to get it sorted out in the morning.
Comment 28 Mark Lam 2012-09-18 01:04:46 PDT
(In reply to comment #27)
> This change broke the WinCairo build bot.  I'll try to get it sorted out in the morning.

This is being fixed in <https://bugs.webkit.org/show_bug.cgi?id=96992>.