Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(709)

Issue 27358002: Generate a class table of all the IDL classes in the database. This table is used (Closed)

Created:
7 years, 2 months ago by siva
Modified:
7 years, 2 months ago
Reviewers:
vsm, rmacnak, blois
CC:
reviews_dartlang.org, vm-dev_dartlang.org
Visibility:
Public.

Description

Generate a class table of all the IDL classes in the database. This table is used to access the C++ class hierachy information to do a proper subtype of check. The new subtype of check improves the following benchmarks Dromaeo-drt dom-modify appendChild runs-per-second from 889.0 to 1575.0 Dromaeo-drt dom-modify insertBefore runs-per-second from 592.4075924075925 to 1298.0 The generated class table is as follows: enum { _HistoryCrossFrameClassId = 0, _LocationCrossFrameClassId, _DOMWindowCrossFrameClassId, _DateTimeClassId, // New types that are not auto-generated should be added here. ANGLEInstancedArraysClassId, AbstractWorkerClassId, .... .... }; typedef struct { const char* class_name; int library_id; int base_class_id; bool is_node; bool is_active; bool is_event; } _Classinfo; typedef _Classinfo _DartWebkitClassInfo[NumWebkitClassIds]; _DartWebkitClassInfo DartWebkitClassInfo = { { "_HistoryCrossFrame", DartHtmlLibraryId, -1, false, false, false }, { "_LocationCrossFrame", DartHtmlLibraryId, -1, false, false, false }, { "_DOMWindowCrossFrame", DartHtmlLibraryId, -1, false, false, true }, { "DateTime", DartCoreLibraryId, -1, false, false, false }, // New types that are not auto-generated should be added here. { "AngleInstancedArrays", DartWebGlLibraryId, -1, false, false, false, }, { "AbstractWorker", DartHtmlLibraryId, -1, false, false, false, }, ..... ..... }; R=rmacnak@google.com, vsm@google.com Committed: https://code.google.com/p/dart/source/detail?r=28821

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Total comments: 3
Unified diffs Side-by-side diffs Delta from patch set Stats (+376 lines, -272 lines) Patch
M sdk/lib/html/dartium/html_dartium.dart View 151 chunks +192 lines, -152 lines 0 comments Download
M sdk/lib/indexed_db/dartium/indexed_db_dartium.dart View 1 2 6 chunks +6 lines, -6 lines 0 comments Download
M sdk/lib/svg/dartium/svg_dartium.dart View 1 2 37 chunks +37 lines, -37 lines 0 comments Download
M sdk/lib/web_audio/dartium/web_audio_dartium.dart View 1 2 4 chunks +4 lines, -4 lines 0 comments Download
M sdk/lib/web_gl/dartium/web_gl_dartium.dart View 1 2 29 chunks +29 lines, -29 lines 0 comments Download
M sdk/lib/web_sql/dartium/web_sql_dartium.dart View 1 2 6 chunks +6 lines, -6 lines 0 comments Download
M tools/dom/scripts/dartdomgenerator.py View 1 2 1 chunk +2 lines, -33 lines 0 comments Download
M tools/dom/scripts/generator.py View 1 2 2 chunks +6 lines, -0 lines 0 comments Download
M tools/dom/scripts/systemnative.py View 1 2 2 chunks +90 lines, -1 line 3 comments Download
M tools/dom/src/native_DOMImplementation.dart View 1 2 4 chunks +4 lines, -4 lines 0 comments Download

Messages

Total messages: 7 (0 generated)
siva
7 years, 2 months ago (2013-10-15 17:25:32 UTC) #1
siva
synched up to tot.
7 years, 2 months ago (2013-10-16 16:21:07 UTC) #2
rmacnak
LGTM
7 years, 2 months ago (2013-10-16 17:46:28 UTC) #3
vsm
lgtm https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemnative.py File tools/dom/scripts/systemnative.py (right): https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemnative.py#newcode1189 tools/dom/scripts/systemnative.py:1189: e = self._emitters.FileEmitter(path) We could factor this out ...
7 years, 2 months ago (2013-10-17 18:52:42 UTC) #4
siva
Committed patchset #3 manually as r28821 (presubmit successful).
7 years, 2 months ago (2013-10-17 20:27:38 UTC) #5
blois
https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemnative.py File tools/dom/scripts/systemnative.py (right): https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemnative.py#newcode1188 tools/dom/scripts/systemnative.py:1188: path = os.path.join(output_dir, 'DartWebkitClassIds.h') Are there any gyp changes ...
7 years, 2 months ago (2013-10-18 17:31:38 UTC) #6
siva
7 years, 2 months ago (2013-10-19 00:06:45 UTC) #7
Message was sent while issue was closed.
https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemna...
File tools/dom/scripts/systemnative.py (right):

https://codereview.chromium.org/27358002/diff/7001/tools/dom/scripts/systemna...
tools/dom/scripts/systemnative.py:1188: path = os.path.join(output_dir,
'DartWebkitClassIds.h')
No, no gyp changes are needed for this. The DartWebkitClassIds.h files used to
be generated in "dart/cpp" directory. I moved it to "dart" directory as it was
included in DartUtils etc.

The old DartWebkitClassIds.h file needs to be removed from older clients

On 2013/10/18 17:31:39, blois wrote:
> Are there any gyp changes that are needed for this?
> 
> I was getting compile issues until I did a clean rebuild (and saw some on the
> bots too), not sure if there will be further incremental build issues later.

Powered by Google App Engine
This is Rietveld 408576698