1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-26 08:41:47 -07:00
Commit graph

2502 commits

Author SHA1 Message Date
Gareth Rees
5ee645763e Catch-up merge from master sources at changelevel 194314 to branch/2016-03-01/mvff-control.
Copied from Perforce
 Change: 194323
2018-06-29 14:28:33 +01:00
Gareth Rees
d1d282d351 Restore fixclosure together with explanation.
Copied from Perforce
 Change: 194314
2018-06-29 13:54:55 +01:00
Gareth Rees
556bb96d41 Catch-up merge from master sources at changelevel 194268 to branch/2018-06-18/job004070.
Copied from Perforce
 Change: 194274
2018-06-28 14:31:02 +01:00
Gareth Rees
d22656c8c4 Catch-up merge from the master sources at changelevel 194194 to branch/2017-03-04/seg-methods.
Copied from Perforce
 Change: 194267
2018-06-28 13:52:36 +01:00
Gareth Rees
70c6338f9e Clarify some assertion conditions.
Copied from Perforce
 Change: 194194
2018-06-26 12:36:53 +01:00
Gareth Rees
53a9a15276 Fix issues identified in review by dl.
Copied from Perforce
 Change: 194187
2018-06-26 11:39:45 +01:00
Gareth Rees
421f73cdef Fix issues identified in review by dl.
Copied from Perforce
 Change: 194184
2018-06-26 11:31:33 +01:00
Gareth Rees
78a544c11a Return resparam for consistency with other describe functions.
Copied from Perforce
 Change: 194167
2018-06-26 09:11:57 +01:00
Gareth Rees
af4dceecd9 Test cases for errors in finalization.
Copied from Perforce
 Change: 194166
2018-06-26 09:01:46 +01:00
Gareth Rees
b873c82d99 Use unsigned for rootvar and locusprefkind typedefs.
Copied from Perforce
 Change: 194161
2018-06-26 08:48:31 +01:00
Gareth Rees
0b0c747d46 Fix copy-paste error.
Copied from Perforce
 Change: 194128
2018-06-23 20:49:17 +01:00
Gareth Rees
7b754520fd Consistent order to prologue: include "mpm.h"; platform check; include other mps headers; include system headers; srcid.
Copied from Perforce
 Change: 194107
2018-06-23 11:31:57 +01:00
Gareth Rees
30245c19b1 Avoid duplicate tag nams.
Copied from Perforce
 Change: 194081
2018-06-22 09:45:24 +01:00
Gareth Rees
bd5a075fd2 In gcc 7.3, -wextra sets -wimplicit-fallthough=3, which is rather strict about the format of the "fall through" comment.
Copied from Perforce
 Change: 194064
2018-06-21 17:38:27 +01:00
Gareth Rees
6d3b228200 Fix issues identified in review by apt.
Copied from Perforce
 Change: 193982
2018-06-19 14:51:56 +01:00
Gareth Rees
9b0635ec53 Use index abstract type for indexes.
Copied from Perforce
 Change: 193969
2018-06-19 11:59:54 +01:00
Gareth Rees
c6af54572d No need for empty atfork handlers, can pass null to pthread_atfork.
Copied from Perforce
 Change: 193963
2018-06-19 08:57:26 +01:00
Gareth Rees
89a4b0378a Simplify the wasmarked protocol.
Copied from Perforce
 Change: 193940
2018-06-18 20:03:13 +01:00
Gareth Rees
37a0381482 Make ams test for invalid references in the same way as the other pool classes. this also avoids fixing them in hot and rash varieties.
Copied from Perforce
 Change: 193924
2018-06-18 16:59:12 +01:00
Gareth Rees
169a3477b7 Awl asserts on fixes to out-of-bounds objects.
New MMQA test case conerr/65.c checks this.

Copied from Perforce
 Change: 193916
2018-06-18 16:29:03 +01:00
Gareth Rees
ab9f8a1a0d Lo asserts on fixes to out-of-bounds objects.
New MMQA test case conerr/64.c checks this.

Copied from Perforce
 Change: 193915
2018-06-18 16:22:16 +01:00
Gareth Rees
30abcd8531 Awl asserts on fixes to unallocated objects.
New MMQA test case conerr/63.c checks this.

Copied from Perforce
 Change: 193910
2018-06-18 15:46:26 +01:00
Gareth Rees
955ea13ee5 Lo asserts on fixes to unallocated objects.
New MMQA test case conerr/62.c checks this.

Copied from Perforce
 Change: 193909
2018-06-18 15:41:29 +01:00
Gareth Rees
ed44ee33c2 Awl asserts on fixes to unaligned exact references.
New MMQA test case conerr/61.c checks this.

Copied from Perforce
 Change: 193904
2018-06-18 15:23:58 +01:00
Gareth Rees
da6aec8bfb Lo asserts on fixes to unaligned exact references.
New MMQA test case conerr/60.c checks this.

Copied from Perforce
 Change: 193901
2018-06-18 15:05:30 +01:00
Gareth Rees
76b082ab3c Assertions on the critical path.
Copied from Perforce
 Change: 193879
2018-06-18 13:17:42 +01:00
Gareth Rees
43eea5a7a4 Awlsegcreate is a thin wrapper around poolgenalloc, so it's simpler just to call the latter.
Copied from Perforce
 Change: 193874
2018-06-18 09:39:18 +01:00
Gareth Rees
1987144308 Losegcreate is a thin wrapper around poolgenalloc, so it's simpler just to call the latter.
Copied from Perforce
 Change: 193869
2018-06-18 09:29:33 +01:00
Gareth Rees
361f82a819 Amcsegfixinplace is a better name for a function that operates on an amc segment.
Copied from Perforce
 Change: 193856
2018-06-16 18:47:14 +01:00
Gareth Rees
6cda91e1ee Keep forward declarations for seg methods together.
Copied from Perforce
 Change: 193842
2018-06-15 14:55:40 +01:00
Gareth Rees
de94fe2aa3 Catch-up merge from master sources at change 193831 to branch/2017-03-04/seg-methods.
Copied from Perforce
 Change: 193836
2018-06-15 13:46:23 +01:00
Gareth Rees
f5ffaeb349 Mach_thread_self() can in theory "return mach_port_null if a resource shortage prevented the reception of the send right" so add a check in each case. (there's nothing we can do about it but at least we can notice.)
Copied from Perforce
 Change: 193831
2018-06-15 12:54:28 +01:00
Gareth Rees
e9d454d796 It's safe to register a thread multiple times on macos, so there is no need for the guard.
Copied from Perforce
 Change: 193828
2018-06-15 12:44:51 +01:00
Gareth Rees
307bc47730 Rename "mac os x" and "os x" to "macos", except for a few cases where for historical accuracy we want to continue to refer to the former name.
Copied from Perforce
 Change: 193821
2018-06-15 12:15:36 +01:00
Gareth Rees
81874fdf08 Fix typo.
Copied from Perforce
 Change: 193811
2018-06-15 11:15:42 +01:00
Gareth Rees
b0a73a5c71 Refactor atfork code to improve separation of concerns.
Copied from Perforce
 Change: 193806
2018-06-15 10:58:33 +01:00
Gareth Rees
4eeac719ad Start the collection and dereference the objects in the parent as well as the child.
Copied from Perforce
 Change: 193800
2018-06-15 10:06:59 +01:00
Gareth Rees
ad432cf7c4 Fix issues identified in review by nb.
Copied from Perforce
 Change: 193793
2018-06-14 19:31:30 +01:00
Gareth Rees
b1ac192a9a Update design history. restore accidentally removed check.
Copied from Perforce
 Change: 193787
2018-06-14 17:55:03 +01:00
Gareth Rees
6fda834973 Improve comments.
Copied from Perforce
 Change: 193783
2018-06-14 17:44:41 +01:00
Gareth Rees
612b44060f Fix ansi build.
Copied from Perforce
 Change: 193769
2018-06-14 16:58:24 +01:00
Gareth Rees
b5e1965b3d Avoid compilation errors from latest msvc.
Copied from Perforce
 Change: 193768
2018-06-14 16:54:33 +01:00
Gareth Rees
f92f645f63 Support for fork on linux and freebsd.
Copied from Perforce
 Change: 193765
2018-06-14 16:47:23 +01:00
Gareth Rees
e70b4c273c Take locks before fork(), release them in the parent and reinitialize them in the child.
Add forktest target to the Xcode project.
Write design for fork safety and cross-reference from the code.
Update release notes.

Copied from Perforce
 Change: 193760
2018-06-14 16:25:08 +01:00
Gareth Rees
2401957e62 Extend forktest so that it does allocation before the fork and collection afterwards; this ensures that we hit the read barrier and thus exercise the exception handling.
After forking in the child, re-create exception port and exception thread, and re-register the (only) thread with that port.

Copied from Perforce
 Change: 193755
2018-06-14 12:54:35 +01:00
Gareth Rees
8146970622 Add fork test case (fails on os x if pthread_atfork is not called).
pthread_atfork handlers on OS X: in the child, update the mach port for the forking thread and move all other threads to the dead ring.

Copied from Perforce
 Change: 193746
2018-06-13 17:09:07 +01:00
Gareth Rees
9de5c1dfbe Avoid using deprecated function mps_fix and deprecated macro mps_fix in the test cases; use mps_fix12 instead.
Copied from Perforce
 Change: 193726
2018-06-13 13:59:14 +01:00
Gareth Rees
52d6325133 New pool method poolsegpoolgen gets the pool generation for a segment. (this allows the segment whiten and reclaim methods not to need to know the pool class.)
Copied from Perforce
 Change: 193084
 ServerID: perforce.ravenbrook.com
2017-03-31 13:28:25 +01:00
Gareth Rees
2a24ad79df Since we know that a segment belongs to a pool with a format at the point where we call segwalk, it makes sense to pass the format.
Copied from Perforce
 Change: 193079
 ServerID: perforce.ravenbrook.com
2017-03-31 09:15:41 +01:00
Gareth Rees
e615adda88 Avoid "result of 32-bit shift implicitly converted to 64 bits" warning from visual c.
Check AWL pool generation.
Update design.

Copied from Perforce
 Change: 193076
 ServerID: perforce.ravenbrook.com
2017-03-31 09:03:38 +01:00