dea496e2d271796a8b7b4d3ff27263086c3d4d21: hoist arrays to XPTHeader draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 15:12:07 -0800 - rev 762247
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
hoist arrays to XPTHeader MozReview-Commit-ID: 5rgwaEBvDYl
38d785af0f0d3d82e5e2f11cac1462d2185edde7: rename field names for const and method descriptors draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 14:33:55 -0800 - rev 762246
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
rename field names for const and method descriptors MozReview-Commit-ID: LD5aVxEMdf
ab882325af45beb5aae9b9f178ee287018927cf7: rename fields of XPTInterfaceDescriptor draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 14:24:24 -0800 - rev 762245
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
rename fields of XPTInterfaceDescriptor don't bother with the additional types thing because that's going away MozReview-Commit-ID: 1tB17LKBeh6
6ec18a5287f08278b6a02600acb23f8f7d826c17: rename fields of XPTInterfaceDirectoryEntry draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 14:18:05 -0800 - rev 762244
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
rename fields of XPTInterfaceDirectoryEntry MozReview-Commit-ID: FlrB8m6WVqg
644e3349766b8a9d8e8f4ee28929aed02d2f84f3: rename fields of XPTHeader draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 14:15:04 -0800 - rev 762243
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
rename fields of XPTHeader MozReview-Commit-ID: KpJDWfmRR1s
29a1104dd0bf4bb590ae8a92913128e0bcc82a88: scrub out a few things only relevant to the disk format draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 13:59:32 -0800 - rev 762242
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
scrub out a few things only relevant to the disk format mostly comments, plus version stuff. MozReview-Commit-ID: JWx9J6S3TPQ
0411d7053af9845c8837bd90aa86d33feb372c83: remove xpt_* files for reading from the XPT files draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 12:51:39 -0800 - rev 762241
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
remove xpt_* files for reading from the XPT files MozReview-Commit-ID: 6NJdaCWRBhU
9e602b48c3fa45d493b4a7166f0599d452f9cff4: BREAKING remove some top-level code for registering XPTs draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 12:16:47 -0800 - rev 762240
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
BREAKING remove some top-level code for registering XPTs MozReview-Commit-ID: 32MrMj8r3Ym
90832bcf1c0bfddac2997ef210c16b162ca595e3: accessor-ize method descriptors draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 10:43:43 -0800 - rev 762239
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
accessor-ize method descriptors This finally makes use of the conversion to nsXPTMethodInfoRef MozReview-Commit-ID: 8qaDUXOqmkx
253531ff0be5ae95f7fcbe3ae5bcc5ed67b45ea1: accessor-ize methods and consts draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 10:29:23 -0800 - rev 762238
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
accessor-ize methods and consts this doesn't fix additional_types, but that will end up not being on the descriptor at all, so I don't want to deal with it here. Thanks to the changes in this patch, it won't require any non-local changes Also, XPTConstDescriptor::name. MozReview-Commit-ID: 2xrpwpYKJL1
1576d7e815f9971eeec38eafda6f3bf8bef6e51d: accessor-ize XPTInterfaceDirectoryEntry draft
Andrew McCreight <continuation@gmail.com> - Wed, 28 Feb 2018 10:07:45 -0800 - rev 762237
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
accessor-ize XPTInterfaceDirectoryEntry header isn't need yet, but it will be the definitions have to go later because eventually they'll need to be there because they use a class defined later. MozReview-Commit-ID: KAxUKn3sDOD
ce06dda5db7c8f2a8d5493ccb810e068f2131bba: Encapsulate nsXPTMethodInfo* as nsXPTMethodInfoRef. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 16:25:29 -0800 - rev 762236
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Encapsulate nsXPTMethodInfo* as nsXPTMethodInfoRef. XXX This needs more changes to the other stubs files. What is the best way to do that? In this patch, nsXPTMethodInfo is turned into nsXPTMethodInfoRef, which contains a const* XPTMethodDescriptor. This will let a later patch add an XPTHeader* to nsXPTMethodInfoRef without requiring any further changes. The bulk of this patch is along the lines of changing "const nsXPTMethodInfo*" to "nsXPTMethodInfoRef" and "info->" to "info.". The interesting changes in this patch are in CallMethodHelper::CallMethodHelper(), CallMethodHelper::Call(), xptiInterfaceInfo.cpp, and xptinfo.h. Also, he stubs files now the nsresult for failure instead of the method info return value, and I added [must_use] to getMethodInfo and getMethodInfoForName. This change is needed because in order to share the data structures in xpt_struct.h between processes in read-only memory, all pointers in those structures must be eliminated (except for XPTHeader). All variable length data structures will end up getting stored in top-level arrays in XPTHeader, and the other structures instead have an index into those arrays. To actually use these indexes to get method information, functions will need an XPTHeader pointer in addition to an XPTMethodDescriptor pointer. Non-xpti users of method descriptor data use const nsXPTMethodInfo*, and do not have access to an XPTHeader. MozReview-Commit-ID: JNDve01V2aG
83525428fb47bf0abb76c9547fa738d7181f5225: Bug 1442363, part 8 - Constify XPTMethodDescriptor::params. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:54:17 -0800 - rev 762235
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 8 - Constify XPTMethodDescriptor::params. MozReview-Commit-ID: 3PvMeJW2P50
fd427dcf84dfd98f6f1675c1e1403cc84207e5d2: Bug 1442363, part 7 - Constify XPTInterfaceDescriptor::additional_types. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:50:41 -0800 - rev 762234
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 7 - Constify XPTInterfaceDescriptor::additional_types. The trick here is that we read in the element type before we expand the array, so that we can write it to the new array before it becomes constified. MozReview-Commit-ID: 2pbpNVZ3gPZ
cbb700837d8104d18e5c7f7ce84794b7620fe11f: Bug 1442363, part 6 - Constify XPTInterfaceDescriptor::const_descriptors. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:32:04 -0800 - rev 762233
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 6 - Constify XPTInterfaceDescriptor::const_descriptors. MozReview-Commit-ID: KkUqoqEP47R
cf15e89688bedf2f0b69403dda94f6b0a891ed00: Bug 1442363, part 5 - Constify XPTInterfaceDescriptor::method_descriptors. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:28:16 -0800 - rev 762232
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 5 - Constify XPTInterfaceDescriptor::method_descriptors. MozReview-Commit-ID: EtPmwxboaq9
0ef22db38154bec122d76f7d9d9b308d3959b8d0: Bug 1442363, part 4 - Constify XPTInterfaceDirectoryEntry::interface_descriptor. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:23:03 -0800 - rev 762231
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 4 - Constify XPTInterfaceDirectoryEntry::interface_descriptor. MozReview-Commit-ID: E4DFA4dodK3
70d8cd6c830731b9fae513120e32f45cc1e7b1ca: Bug 1442363, part 3 - Constify the strings in xpt_struct.h. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:15:05 -0800 - rev 762230
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 3 - Constify the strings in xpt_struct.h. MozReview-Commit-ID: LBZze0U1jvW
378a7eb3777ed8cc8eacbbf9dea199f9f868ffc9: Bug 1442363, part 2 - Constify XPTHeader::interface_directory. draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 15:08:42 -0800 - rev 762229
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 2 - Constify XPTHeader::interface_directory. MozReview-Commit-ID: 3oLZFtXBsV8
993eeafa1f11e1055081ed0082e56551b66120c2: Bug 1442363, part 1 - Constify RegisterXPTHeader(). draft
Andrew McCreight <continuation@gmail.com> - Tue, 27 Feb 2018 14:58:03 -0800 - rev 762228
Push 101107 by bmo:continuation@gmail.com at Thu, 01 Mar 2018 22:22:59 +0000
Bug 1442363, part 1 - Constify RegisterXPTHeader(). Once the XPT data is statically allocated, all of the pointers in xpt_struct.h have to be made const, as well as the XPTHeader itself. The existing consumers mostly assume things are const already, so the bulk of the work is tweaking the deserialization code in xpt_struct.cpp so that the final result is const. I've broken up these changes into a set of patches. This patch also gets rid of xptiTypelibGuts::GetHeader(), which is never called. MozReview-Commit-ID: FJpmNjY87SN
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 tip