CLOSED FIXED Bug 37684
[Qt] JSValue QtClass::fallbackObject can be optimized
https://bugs.webkit.org/show_bug.cgi?id=37684
Summary [Qt] JSValue QtClass::fallbackObject can be optimized
Anders Bakken
Reported 2010-04-15 16:58:12 PDT
Created attachment 53489 [details] patch that reduces memcpy'ing JSValue QtClass::fallbackObject(ExecState* exec, Instance* inst, const Identifier& identifier) copies and modifies more string data than it needs to. The attached patch improves this.
Attachments
patch that reduces memcpy'ing (1.43 KB, patch)
2010-04-15 16:58 PDT, Anders Bakken
no flags
Patch (1.57 KB, patch)
2010-05-12 06:24 PDT, Jesus Sanchez-Palencia
commit-queue: commit-queue-
New version of the patch (1.55 KB, patch)
2010-05-14 03:19 PDT, Anders Bakken
no flags
Jesus Sanchez-Palencia
Comment 1 2010-05-11 14:59:34 PDT
(In reply to comment #0) > The attached patch improves this. It is necessary to mention this bug report on the Changelog. Also, do you want it to be reviewed? If so you have to change it to r? . Kenneth, can you take a look at this? LGTM. ;)
Kenneth Rohde Christiansen
Comment 2 2010-05-11 15:02:41 PDT
I guess you wanted to put this up for review
Anders Bakken
Comment 3 2010-05-12 02:58:07 PDT
I did want to put it up for review. Sorry about that :-)
Kenneth Rohde Christiansen
Comment 4 2010-05-12 05:39:26 PDT
Comment on attachment 53489 [details] patch that reduces memcpy'ing Looks good Anders!
Jesus Sanchez-Palencia
Comment 5 2010-05-12 06:15:27 PDT
Comment on attachment 53489 [details] patch that reduces memcpy'ing I'll add the bug number to the changelog and upload a new patch. Just following the guidelines... ;)
Jesus Sanchez-Palencia
Comment 6 2010-05-12 06:24:45 PDT
Created attachment 55837 [details] Patch Added the bug number to the Changelog.
Jesus Sanchez-Palencia
Comment 7 2010-05-12 06:25:19 PDT
Comment on attachment 53489 [details] patch that reduces memcpy'ing Clearing flags of old patch.
WebKit Commit Bot
Comment 8 2010-05-14 00:56:13 PDT
Comment on attachment 55837 [details] Patch Rejecting patch 55837 from commit-queue. Failed to run "[u'/Users/eseidel/Projects/CommitQueue/WebKitTools/Scripts/svn-apply', u'--force']" exit_code: 2 Parsed 2 diffs from patch file(s). patching file WebCore/ChangeLog patch: **** malformed patch at line 18: 2010-04-15 Adam Roben <aroben@apple.com> patching file WebCore/bridge/qt/qt_class.cpp Full output: http://webkit-commit-queue.appspot.com/results/2315058
Anders Bakken
Comment 9 2010-05-14 03:19:44 PDT
Created attachment 56062 [details] New version of the patch
WebKit Commit Bot
Comment 10 2010-05-15 00:51:26 PDT
Comment on attachment 56062 [details] New version of the patch Rejecting patch 56062 from commit-queue. Failed to run "['WebKitTools/Scripts/run-webkit-tests', '--no-launch-safari', '--exit-after-n-failures=1', '--ignore-tests', 'compositing/iframes', '--quiet']" exit_code: 1 Last 500 characters of output: ng Java tests make: Nothing to be done for `default'. Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests Skipped list contained 'compositing/iframes/composited-iframe.html', but no file of that name could be found Testing 18341 test cases. fast/loader/recursive-before-unload-crash.html -> failed Exiting early after 1 failures. 13417 tests run. 198.65s total testing time 13416 test cases (99%) succeeded 1 test case (<1%) had incorrect layout 4 test cases (<1%) had stderr output Full output: http://webkit-commit-queue.appspot.com/results/2265108
Kenneth Rohde Christiansen
Comment 11 2010-05-15 12:32:49 PDT
Anders, you cannot remove the "Reviewed by NOBODY (OOPS!!)". If you do that we cannot land using the commit-queue. It has to be exactly like the prepare-ChangeLog scripts writes it. Now you can reupload the patch with this fixed and reset r? and cq? -- or -- You can upload the patch with "Reviewed by Kenneth Rohde Christiansen" and just set cq? The latter is preferred as anyone with committer-rights can change the cq? to cq+ Another option would be to get someone to land it manually using webkit-patch or similar.
Adam Barth
Comment 12 2010-05-15 17:55:32 PDT
Comment on attachment 56062 [details] New version of the patch I think you were just bit by a flaky test.
WebKit Commit Bot
Comment 13 2010-05-15 19:52:32 PDT
Comment on attachment 56062 [details] New version of the patch Clearing flags on attachment: 56062 Committed r59563: <http://trac.webkit.org/changeset/59563>
WebKit Commit Bot
Comment 14 2010-05-15 19:52:38 PDT
All reviewed patches have been landed. Closing bug.
Simon Hausmann
Comment 15 2010-05-16 00:58:58 PDT
Revision r59563 cherry-picked into qtwebkit-2.0 with commit 4bb49bb59d4f763069ae6bb84b9648d6ed0bfd1d
Kimmo Kinnunen
Comment 16 2010-05-17 05:25:35 PDT
This commit causes a bug which prevents signals from being matched. It introduces second local variable named "index", which then overrides the proper method number variable (also called "index") this causes signals from being found in some cases. The affected line is: QtRuntimeMetaMethod* val = new (exec) QtRuntimeMetaMethod(exec, identifier, static_cast<QtInstance*>(inst), index, normal, false);
Kenneth Rohde Christiansen
Comment 17 2010-05-17 05:32:04 PDT
Uh, I wasn't able to see that from the diff. I will fix it later today
Kenneth Rohde Christiansen
Comment 18 2010-05-17 05:40:50 PDT
Patch shadowed a variable.
Kenneth Rohde Christiansen
Comment 19 2010-05-17 06:50:28 PDT
Fixed regression in r59606
Anders Bakken
Comment 20 2010-05-17 07:37:32 PDT
Oops. My bad.
Simon Hausmann
Comment 21 2010-05-18 00:29:30 PDT
<cherr-pick-for-backport: r59606>
Simon Hausmann
Comment 22 2010-05-18 00:30:44 PDT
<cherry-pick-for-backport: r59606>
Simon Hausmann
Comment 23 2010-05-18 00:33:41 PDT
Revision r59606 cherry-picked into qtwebkit-2.0 with commit 807157e42add842605ec67d9363dd3f1861748ca
Note You need to log in before you can comment on or make changes to this bug.