Richard Brooksby
3dd201bf47
Turning pool init methods the right way in, so that they each call the next method up the class hierarchy.
...
Copied from Perforce
Change: 190858
ServerID: perforce.ravenbrook.com
2016-04-10 17:49:08 +01:00
Richard Brooksby
111136891e
Adding instinit and instfinish and using them as next methods in seginit, segfinish, etc.
...
Copied from Perforce
Change: 190857
ServerID: perforce.ravenbrook.com
2016-04-10 15:33:17 +01:00
Richard Brooksby
3154cbed7d
Making arenas properly inherit from instances, and converting remaining method calls to use the method macro, while noting uses which are inside-out.
...
Copied from Perforce
Change: 190856
ServerID: perforce.ravenbrook.com
2016-04-10 14:00:55 +01:00
Richard Brooksby
187a9129a8
Fixing level of instclass so that class checks work properly.
...
Copied from Perforce
Change: 190851
ServerID: perforce.ravenbrook.com
2016-04-10 12:33:47 +01:00
Richard Brooksby
d462d4b36d
Repairing superclass by taking a kind, which can later be checked.
...
Copied from Perforce
Change: 190850
ServerID: perforce.ravenbrook.com
2016-04-10 12:28:51 +01:00
Richard Brooksby
3bc19084f6
Fixing mustbea to not return a void *.
...
Copied from Perforce
Change: 190849
ServerID: perforce.ravenbrook.com
2016-04-08 20:29:33 +01:00
Richard Brooksby
a15e1139c1
Fixing nulls in class methods revealed by more thoroughly applying class checking functions.
...
Copied from Perforce
Change: 190842
ServerID: perforce.ravenbrook.com
2016-04-08 20:00:23 +01:00
Richard Brooksby
a56de59509
Generating type-safe functions for getting and setting the class of instances.
...
Fixing warning revealed by GCC that I wasn't actually checking classes after init.
Fixing abstract classes so that they pass their own checks!
Copied from Perforce
Change: 190837
ServerID: perforce.ravenbrook.com
2016-04-08 19:50:12 +01:00
Richard Brooksby
d2f191f0d2
Using common code for class getters and setters.
...
Copied from Perforce
Change: 190836
ServerID: perforce.ravenbrook.com
2016-04-08 18:33:34 +01:00
Richard Brooksby
5a0c818945
Explicitly making inststruct the prefix of instances, eliminating pointer punning of class pointers, and reducing likelihood of editing errors.
...
Copied from Perforce
Change: 190830
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
a5ea15c8ff
Eliminating issubclasspoly and replacing with compile-time constant test.
...
Copied from Perforce
Change: 190829
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
260964fdac
Replacing prime factor subclass test with array-based test, because the type ids were overflowing 32 bits.
...
Copied from Perforce
Change: 190828
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:21 +01:00
Richard Brooksby
43b3f1a5cb
Generating a static superclass mapping and eliminating other superclass macros.
...
Copied from Perforce
Change: 190827
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
298addf910
Implementing isa, mustbea, couldbea, and reshaping the land classes to put the init, finish, and describe methods the right way in.
...
Copied from Perforce
Change: 190826
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
1d28eaff07
Eliminating the concept of "alias classes" in favour of "kinds".
...
Copied from Perforce
Change: 190825
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
e61b0e2774
Bringing design document roughly up-to-date.
...
Copied from Perforce
Change: 190824
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
2e191a810e
Referring to classes by their base identifiers.
...
Copied from Perforce
Change: 190823
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
09e73dd1da
Renaming protocolinst to inst and protocolclass to instclass to make naming consistent with other classes.
...
Copied from Perforce
Change: 190822
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
19adf3ec16
Adding an assert that can be used in expressions.
...
Copied from Perforce
Change: 190821
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
e1b7e69a02
Adding class-based checking macros.
...
Copied from Perforce
Change: 190820
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
32de0701e0
Removing always-zero offset from pool class structure.
...
Copied from Perforce
Change: 190819
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:20 +01:00
Richard Brooksby
ed1782a479
Removing unused offset field in arena classes.
...
Copied from Perforce
Change: 190818
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
50ad46051c
Using prime factors to determine subclass relationships quickly.
...
Copied from Perforce
Change: 190817
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
e041841a88
Moving common fields into the base class, starting with the class name.
...
Copied from Perforce
Change: 190816
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
780e5991cb
Removing never-used multiple inheritance speculation.
...
Copied from Perforce
Change: 190815
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
847272c3b5
Eliminating structure copy by sharing class init method.
...
Copied from Perforce
Change: 190814
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
93b423efdf
Sharing definition of class declaration in class definition.
...
Copied from Perforce
Change: 190813
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
c1abe0e9fd
Abstracting class declarations and references to classes.
...
Copied from Perforce
Change: 190812
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
2743081e86
Getting rid of "old style" class ensure functions.
...
Copied from Perforce
Change: 190811
ServerID: perforce.ravenbrook.com
2016-04-08 17:51:19 +01:00
Richard Brooksby
bf4c410a5d
Branching master to branch/2016-04-08/protidying.
...
Copied from Perforce
Change: 190804
ServerID: perforce.ravenbrook.com
2016-04-08 17:49:54 +01:00
Richard Brooksby
2d6a909196
Simplifying manual procedure using "p4 populate".
...
Copied from Perforce
Change: 190714
ServerID: perforce.ravenbrook.com
2016-04-05 12:01:38 +01:00
Richard Brooksby
eaa2a84ab1
Adding post-branch checklist steps to ensure the branch appears correctly in various places.
...
Adding document history, updating copyrights, fixing cross-reference.
Copied from Perforce
Change: 190711
ServerID: perforce.ravenbrook.com
2016-04-05 11:52:42 +01:00
Richard Brooksby
3bc5b64474
Adding step to check the result of the version branch tool before actually making the branch.
...
Copied from Perforce
Change: 190710
ServerID: perforce.ravenbrook.com
2016-04-05 11:42:30 +01:00
Richard Brooksby
9c84be01ad
Adding advice about what to put in the version branch description.
...
Copied from Perforce
Change: 190709
ServerID: perforce.ravenbrook.com
2016-04-05 11:36:31 +01:00
Richard Brooksby
17b6ff61ca
Adding step to update copyright date in version.c.
...
Copied from Perforce
Change: 190708
ServerID: perforce.ravenbrook.com
2016-04-05 11:32:33 +01:00
Richard Brooksby
484d47205a
Updating copyright date to current year.
...
Copied from Perforce
Change: 190707
ServerID: perforce.ravenbrook.com
2016-04-05 11:30:42 +01:00
Richard Brooksby
3ce48493c5
Updating .p4ignore files with miscellaneous entries collected from work with git.
...
Copied from Perforce
Change: 190702
ServerID: perforce.ravenbrook.com
2016-04-05 11:27:30 +01:00
Richard Brooksby
dcc027082e
Fixing horrible intialization of segment class by poking before calling seginit.
...
Copied from Perforce
Change: 190694
ServerID: perforce.ravenbrook.com
2016-04-04 23:28:28 +01:00
Richard Brooksby
1199a63bab
Linking .p4ignore to .gitignore to share configuration between perforce and git.
...
Copied from Perforce
Change: 190667
ServerID: perforce.ravenbrook.com
2016-04-04 19:20:26 +01:00
Richard Brooksby
50ecd3fb88
Adding new build directories to .p4ignore.
...
Copied from Perforce
Change: 190643
ServerID: perforce.ravenbrook.com
2016-04-02 15:54:24 +01:00
Richard Brooksby
49534e914f
Protecting some segment accessor macros with rvalue.
...
Removing duplicate definition of SegPoolRing.
Copied from Perforce
Change: 190642
ServerID: perforce.ravenbrook.com
2016-04-02 15:53:57 +01:00
Richard Brooksby
29fd6ebdd0
Don't attempt to merge a non-white segment with a white one.
...
Copied from Perforce
Change: 190634
ServerID: perforce.ravenbrook.com
2016-04-02 12:07:46 +01:00
Richard Brooksby
fffb906f11
Fixing default behaviour for merging segments with differing summaries and therefore write barriers.
...
Copied from Perforce
Change: 190629
ServerID: perforce.ravenbrook.com
2016-04-02 09:18:58 +01:00
Richard Brooksby
7b2442ce03
Undoing accidental submit of change to arena size in scheme-advanced.c.
...
Copied from Perforce
Change: 190624
ServerID: perforce.ravenbrook.com
2016-04-02 07:36:54 +01:00
Richard Brooksby
e27b3ce6a8
Don't allow pools to whiten segments without condemning objects, so that a condemned size of zero implies no white segments, allowing quick trace destruction.
...
Copied from Perforce
Change: 190607
ServerID: perforce.ravenbrook.com
2016-03-31 23:41:46 +01:00
Richard Brooksby
4cb09a6d47
Cherry-picking low-risk fix for job003880. see < https://info.ravenbrook.com/mail/2016/03/29/20-23-20/0/ >.
...
Copied from Perforce
Change: 190579
ServerID: perforce.ravenbrook.com
2016-03-31 12:30:00 +01:00
Richard Brooksby
e21d03d5fb
Toning down critical wording in the release notes. see < https://info.ravenbrook.com/mail/2016/03/29/16-24-24/0/ >.
...
Copied from Perforce
Change: 190578
ServerID: perforce.ravenbrook.com
2016-03-31 12:15:15 +01:00
Richard Brooksby
0d7f8273fd
Reducing over-ambitious random alignment increases in apss test.
...
Copied from Perforce
Change: 190575
ServerID: perforce.ravenbrook.com
2016-03-31 09:28:41 +01:00
Richard Brooksby
61dc9d8345
Cross-referencing comment about non-working debugging aps to job003995.
...
Copied from Perforce
Change: 190477
ServerID: perforce.ravenbrook.com
2016-03-27 21:17:53 +01:00
Richard Brooksby
7c1e988d2b
Documenting and checking constraints on mps_key_align on manual pools.
...
Copied from Perforce
Change: 190472
ServerID: perforce.ravenbrook.com
2016-03-27 20:48:38 +01:00