1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-26 15:21:51 -08:00
Commit graph

1510 commits

Author SHA1 Message Date
Gareth Rees
b512c97d84 Use x and x_none for x ∈ {lock, plinth, remembered_set, shield} to match the other settings (aver_and_check, event, statistics).
Copied from Perforce
 Change: 185580
 ServerID: perforce.ravenbrook.com
2014-04-16 10:48:21 +01:00
Gareth Rees
5d25840cd5 Catch-up merge from master sources to branch/2014-03-25/ansi.
Copied from Perforce
 Change: 185356
 ServerID: perforce.ravenbrook.com
2014-04-08 18:07:11 +01:00
Gareth Rees
3f50055416 Fix bugs in exposet0.c and steptest.c on windows.
Port djbench and gcbench to Windows.
Run amcssth and awlutth test cases on Windows.

Copied from Perforce
 Change: 185354
 ServerID: perforce.ravenbrook.com
2014-04-08 16:26:27 +01:00
Gareth Rees
e45793ce57 New header testthr.h provides simple threading interface.
Implementations testthrix.c for Unix and testthrw3.c for Windows.
Multi-threaded test cases use the new interface.
Rename lockutw3 to lockut (no longer Windows-specific).
Run multi-threaded test cases on Windows and lockut elsewhere.

Copied from Perforce
 Change: 185350
 ServerID: perforce.ravenbrook.com
2014-04-08 15:14:32 +01:00
Gareth Rees
9a57106d49 Remove unnecessary headers from the test suite.
Copied from Perforce
 Change: 185340
 ServerID: perforce.ravenbrook.com
2014-04-08 13:03:04 +01:00
Gareth Rees
b86947796e Amc/amcz subclass test needs to be other way round now.
Smoke tests for AMCZ -- add it to amcss, amcsshe, amcssth, finaltest and walkt0.
Smoke tests for LO -- add it to walkt0.
Fix finaltest for AMC and AWL -- need to allocate in generation 0 to get prompt finalization. (Also fix MMQA test function/51.c.)

Copied from Perforce
 Change: 185327
 ServerID: perforce.ravenbrook.com
2014-04-07 23:05:35 +01:00
Gareth Rees
c680b9410a Ensure that the win32_lean_and_mean is not changed by mpswin.h.
Copied from Perforce
 Change: 185323
 ServerID: perforce.ravenbrook.com
2014-04-07 18:27:57 +01:00
Gareth Rees
a3b3fcc7b6 There's no need for test cases to include mpsw3.h any more.
Copied from Perforce
 Change: 185322
 ServerID: perforce.ravenbrook.com
2014-04-07 18:19:37 +01:00
Gareth Rees
88509784e3 Avoid "potentially uninitialized local variable used" errors from microsoft visual c.
Copied from Perforce
 Change: 185319
 ServerID: perforce.ravenbrook.com
2014-04-07 17:56:20 +01:00
Gareth Rees
a76ab7ce6b Catch-up merge from master sources to branch/2014-03-25/ansi.
Copied from Perforce
 Change: 185305
 ServerID: perforce.ravenbrook.com
2014-04-07 16:04:58 +01:00
Gareth Rees
a51ebd62ea Add default case to switch statement so that it compiles with gcc -wswitch-default.
Copied from Perforce
 Change: 185293
 ServerID: perforce.ravenbrook.com
2014-04-07 15:35:17 +01:00
Gareth Rees
20136d505d Merge branch/2014-01-15/nailboard into the master sources.
Copied from Perforce
 Change: 185285
 ServerID: perforce.ravenbrook.com
2014-04-07 14:23:18 +01:00
Gareth Rees
b7c3b0ae84 Can't can't checkd_nosig(ring, &arenaring) because &arenaring is never null and gcc will warn about a constant comparison.
Copied from Perforce
 Change: 185279
 ServerID: perforce.ravenbrook.com
2014-04-07 13:22:21 +01:00
Gareth Rees
4e8b76ac54 Catch-up merge from master sources to branch/2014-01-15/nailboard.
Copied from Perforce
 Change: 185275
 ServerID: perforce.ravenbrook.com
2014-04-07 10:38:08 +01:00
Gareth Rees
f2776dc0b4 Can't use checkd_nosig(tree, ...) because treeempty is null.
arena->enabledMessageTypes might be NULL.

Copied from Perforce
 Change: 185271
 ServerID: perforce.ravenbrook.com
2014-04-07 10:14:40 +01:00
Gareth Rees
0f445a4ea4 Remove "todo: checkleveldeep asserts on arena creation with bootstrapping problems." -- this was fixed in change 184924.
Copied from Perforce
 Change: 185267
 ServerID: perforce.ravenbrook.com
2014-04-07 00:29:09 +01:00
Gareth Rees
d3d2795fce Improve control over checking:
1. Where Type is a pointer type with a signature, replace CHECKL(TypeCheck(val)) with CHECKD(Type, val).
2. Where Type is a pointer type with no signature, replace CHECKL(TypeCheck(val)) with CHECKD_NOSIG(Type, val).
3. Where Type is a pointer type with a signature, but the structure is not visible at point of checking, replace CHECKL(TypeCheck(val)) with CHECKD_NOSIG(Type, val). Reference <design/check/#.hidden-type>
4. Make BTCheck extern and use it where possible.
5. Replace AVER(TypeCheck(val)) with AVERT(Type, val).

Copied from Perforce
 Change: 185263
 ServerID: perforce.ravenbrook.com
2014-04-06 22:51:05 +01:00
Gareth Rees
9c54379464 Must check against treeempty, not null.
Copied from Perforce
 Change: 185261
 ServerID: perforce.ravenbrook.com
2014-04-06 21:50:56 +01:00
Gareth Rees
116021aef0 Complete design.mps.type and design.mps.interface-c and move them to "current" design in the manual.
Remove unused enumeration FormatVariety from mpmtypes.
Improve wording of manual entry on MPS_RM_PROT.

Copied from Perforce
 Change: 185259
 ServerID: perforce.ravenbrook.com
2014-04-06 20:00:31 +01:00
Gareth Rees
31154ac728 Avoid calling sizeroundup when the result needs to be a count.
Use PointerAdd instead of casting to (char *) and back again.

Copied from Perforce
 Change: 185256
 ServerID: perforce.ravenbrook.com
2014-04-06 17:35:57 +01:00
Gareth Rees
ee5b6b12b3 Poolarena must be thread-safe, so add a comment.
Copied from Perforce
 Change: 185250
 ServerID: perforce.ravenbrook.com
2014-04-06 16:44:07 +01:00
Gareth Rees
c2383c4ec9 Remove unneeded headers.
Copied from Perforce
 Change: 185248
 ServerID: perforce.ravenbrook.com
2014-04-06 15:53:54 +01:00
Gareth Rees
906209e2d0 Remove todo -- this was done in change 179501.
Copied from Perforce
 Change: 185247
 ServerID: perforce.ravenbrook.com
2014-04-06 15:53:34 +01:00
Gareth Rees
2f9067da36 Event arenablacklistzone was deleted, but event_version_minor was not updated; and the instruction "when you retire an event type, don't delete it from the list -- comment it out" was not followed.
Delete TODO item: EVENT_VERSION numbers are parameters to the EventInit event.

Copied from Perforce
 Change: 185246
 ServerID: perforce.ravenbrook.com
2014-04-06 15:52:56 +01:00
Gareth Rees
a7bc489409 Refactor walkt0 test case so that it can test different pool classes.
Copied from Perforce
 Change: 185244
 ServerID: perforce.ravenbrook.com
2014-04-06 11:47:36 +01:00
Gareth Rees
cd377eb050 Refactor finaltest so that it is capable of testing different pool classes.
Copied from Perforce
 Change: 185235
 ServerID: perforce.ravenbrook.com
2014-04-04 21:59:45 +01:00
Gareth Rees
9bb6b2f8be Tidy-up of attributes and pool classes:
* Bring design up to date.
* New function PoolHasAttr encapsulates attribute checking.
* Abstract classes are abstract and mustn't be checked.
* The dummy pool class in fotest needs a size.
* Abstract pool classes null out methods that they can't provide a generic implementation for, to force subclasses to provide one.
* New function PoolTrivFramePopPending provides a generic implementation of that method.
* Rename PoolNoFreeWalk to PoolTrivFreeWalk since it has NOOP rather than NOTREACHED.
* Check that AttrMOVINGGC implies AttrGC.
* Remove unimplemented attributes (BUF_RESERVE, BUF_ALLOC, INCR_RB, INCR_WB, PM)
* AMC now inherits from AMCZ instead of the other way round. This is simpler: AMC adds features to AMCZ rather than AMCZ taking features away (and not quite getting it right).
* Similarly, LO inherits from AbstractSegBufPoolClass + PoolClassMixInCollect so that it doesn't have to clear AttrSCAN and the scan methods.
* Fix bug in MFSCheck -- mustn't check unroundedUnitSize >= UNIT_MIN since small unit sizes are rounded up to UNIT_MIN.
* Don't see AttrFREE in MRG (since no free method is supplied).
* Check AttrSCAN systematically (in PoolScan and SegCheck) rather than opportunistically in TraceStart and TraceQuantum.

Copied from Perforce
 Change: 185231
 ServerID: perforce.ravenbrook.com
2014-04-04 17:05:08 +01:00
Gareth Rees
673eea41a0 Check classes after defining them.
Copied from Perforce
 Change: 185228
 ServerID: perforce.ravenbrook.com
2014-04-04 12:51:07 +01:00
Gareth Rees
94e3fff083 Turn on -wswitch-default for gcc.
Add missing default: cases to switch statements.

Copied from Perforce
 Change: 185226
 ServerID: perforce.ravenbrook.com
2014-04-04 12:16:59 +01:00
Gareth Rees
6ef4b6e0c6 Explain how to call mps_root_create_table() safely (avoiding type punning). fix example for mps_root_create_table_masked(). use the recommended approach in qs.c.
Copied from Perforce
 Change: 185223
 ServerID: perforce.ravenbrook.com
2014-04-04 11:49:19 +01:00
Gareth Rees
3f07e913b7 Fix airtest to use its own ambiguous root instead of relying on references to disappear from the c stack (which they don't on lii6ll).
Copied from Perforce
 Change: 185218
 ServerID: perforce.ravenbrook.com
2014-04-04 10:30:45 +01:00
Gareth Rees
38eb93c97f Fix the build for the usual configuration (not disabled_shield).
"make test" compiles the CONFIG_POLL_NONE configuration but doesn't run any test cases (not sure which ones are expected to pass yet).

Copied from Perforce
 Change: 185188
 ServerID: perforce.ravenbrook.com
2014-04-02 16:53:46 +01:00
Gareth Rees
43fc65b539 Oops: no need to set the spare commit limit here.
Copied from Perforce
 Change: 185182
 ServerID: perforce.ravenbrook.com
2014-04-02 16:02:09 +01:00
Gareth Rees
84cd92ab89 Improve clarity of product configuration so that names more explicitly indicate what they do:
* CONFIG_POLL_NONE (because the user-visible consequence is that polling is no longer supported; was CONFIG_PROTECTION_NONE).
* DISABLE_LOCKS (was THREAD_SINGLE).
* DISABLE_SHIELD (was THREAD_SINGLE && PROTECTION_NONE)
* DISABLE_REMEMBERED_SET (was PROTECTION_NONE)
When the shield is disabled, ArenaLeave asserts that there are no busy traces, and ArenaPoll is a no-op.
By having functions implemented using the corresponding macro, we can avoid duplicated code, and avoid testing DISABLE_SHIELD in global.c.
Remove all remaining references to MPS_PROD_EPCORE.

Copied from Perforce
 Change: 185176
 ServerID: perforce.ravenbrook.com
2014-04-02 15:48:57 +01:00
Gareth Rees
feaa22a74f Remove unnecessary calls to mps_args_done -- these crept back in via the merge of the cbs-tract-alloc branch.
Copied from Perforce
 Change: 185143
 ServerID: perforce.ravenbrook.com
2014-04-01 22:43:58 +01:00
Gareth Rees
5dc1122db8 Catch-up merge from master sources to branch/2014-01-15/nailboard.
Copied from Perforce
 Change: 185138
 ServerID: perforce.ravenbrook.com
2014-04-01 22:08:45 +01:00
Gareth Rees
a29c01d416 Clang can compile eventsql.c with -pedantic but gcc cannot.
Copied from Perforce
 Change: 185137
 ServerID: perforce.ravenbrook.com
2014-04-01 22:07:48 +01:00
Gareth Rees
fe837568b9 Cast pointer to void * for the benefit of gcc.
Copied from Perforce
 Change: 185133
 ServerID: perforce.ravenbrook.com
2014-04-01 21:12:58 +01:00
Gareth Rees
1fc2bbe52b Fixed dl's review comments <https://info.ravenbrook.com/mail/2014/04/01/13-28-17/0/>.
Copied from Perforce
 Change: 185127
 ServerID: perforce.ravenbrook.com
2014-04-01 17:02:00 +01:00
Gareth Rees
4ee6bdd356 Explain why the last level in the nailboard might be tiny (to avoid special cases for small nailboards).
Copied from Perforce
 Change: 185122
 ServerID: perforce.ravenbrook.com
2014-04-01 13:32:42 +01:00
Gareth Rees
3bbde3766b Generate dependencies for fmtscheme.c.
Copied from Perforce
 Change: 185120
 ServerID: perforce.ravenbrook.com
2014-04-01 12:11:06 +01:00
Richard Brooksby
3c543eb1a2 Catch up merge from masters to branch/2014-01-15/nailboard.
Copied from Perforce
 Change: 185118
 ServerID: perforce.ravenbrook.com
2014-04-01 11:43:47 +01:00
Gareth Rees
d190a9221c Fixed rb's review comments <https://info.ravenbrook.com/mail/2014/03/31/15-48-46/0/>
Copied from Perforce
 Change: 185111
 ServerID: perforce.ravenbrook.com
2014-03-31 19:03:32 +01:00
Gareth Rees
9a523d0ccb Fix compilation on lii6gc:
* Don't test __has_feature unless we know we are on MPS_BUILD_LL.
* Fix type-punned pointer aliasing in expt825.c.

Copied from Perforce
 Change: 185104
 ServerID: perforce.ravenbrook.com
2014-03-31 13:01:40 +01:00
Gareth Rees
5edd5c5ef8 Bring .p4ignore up to date so that p4 status is clean.
Copied from Perforce
 Change: 185101
 ServerID: perforce.ravenbrook.com
2014-03-31 11:37:46 +01:00
Gareth Rees
b2ec897e6b Support the clang address sanitizer.
Copied from Perforce
 Change: 185096
 ServerID: perforce.ravenbrook.com
2014-03-30 18:51:53 +01:00
Gareth Rees
d92687e063 Turn off -wunreachable-code in gcc: too many false positives.
Copied from Perforce
 Change: 185091
 ServerID: perforce.ravenbrook.com
2014-03-30 17:00:50 +01:00
Gareth Rees
f025b00534 Turn on -wunreachable-code for gcc and clang.
Remove unreachable code:
* No need to have different debug options or structured allocation classes for different platforms.
* Don't use STATISTIC_BEGIN, use STATISTIC_STAT.
* #ifdef away the unused code in zmess.c for testing ControlAlloc failure.
* Remove unused code from the example Scheme interpreter.

Copied from Perforce
 Change: 185089
 ServerID: perforce.ravenbrook.com
2014-03-30 14:26:02 +01:00
Gareth Rees
608720178b Fix header comment for ssw3i6*.c -- win64 not win32.
Copied from Perforce
 Change: 185086
 ServerID: perforce.ravenbrook.com
2014-03-29 17:24:28 +00:00
Gareth Rees
56149eaf27 Preserve the first table entry, so as to avoid false positives when this is kept alive by a register or stack-local variable.
Copied from Perforce
 Change: 185077
 ServerID: perforce.ravenbrook.com
2014-03-28 14:27:21 +00:00