Gareth Rees
84e59c626e
Bring design.mps.message up to date and move it from old to current.
...
Copied from Perforce
Change: 192625
ServerID: perforce.ravenbrook.com
2016-10-18 22:35:13 +01:00
Gareth Rees
2e7a76cc5c
Regularize the signature comments, for the benefit of design.mps.sig.test.uniq.
...
Copied from Perforce
Change: 192620
ServerID: perforce.ravenbrook.com
2016-10-18 18:30:50 +01:00
Gareth Rees
c07a54b388
Remove design documents for unsupported operating systems sunos, solaris and osf/1 (protsu, sso1al, vmo1, and vmso).
...
Update thread-safety and version-library design documents and move them from old to current.
Copied from Perforce
Change: 192617
ServerID: perforce.ravenbrook.com
2016-10-18 18:30:09 +01:00
Gareth Rees
c6cc188ce9
Bring design.mps.prmc up to date with recent changes.
...
Copied from Perforce
Change: 192609
ServerID: perforce.ravenbrook.com
2016-10-15 21:25:21 +01:00
Gareth Rees
52d40d2fed
Remove unused functions landcreate and landdestroy.
...
Copied from Perforce
Change: 192603
ServerID: perforce.ravenbrook.com
2016-10-14 22:30:11 +01:00
Gareth Rees
6255d80714
Avoid warnings and errors when building the manual.
...
Add glossary entries for "protected" and "unprotected".
Copied from Perforce
Change: 192598
ServerID: perforce.ravenbrook.com
2016-10-14 22:08:51 +01:00
Gareth Rees
ce8e22cd8e
Split generic mutator context module into two parts: one for generic operating system (prmcan.c) and one for generic architecture (prmcanan.c).
...
Copied from Perforce
Change: 192583
ServerID: perforce.ravenbrook.com
2016-10-14 13:25:14 +01:00
Gareth Rees
a53d45c5c7
Change file types to text+k.
...
Copied from Perforce
Change: 192578
ServerID: perforce.ravenbrook.com
2016-10-14 12:40:35 +01:00
Gareth Rees
9a2d4390b5
Add discriminator to mutatorcontextstruct and implement mutatorcontextinitfault and mutatorcontextinitthread on posix/linux.
...
Copied from Perforce
Change: 192577
ServerID: perforce.ravenbrook.com
2016-10-14 12:39:50 +01:00
Gareth Rees
0e3d8e373d
Add discriminator to mutatorcontextstruct and implement mutatorcontextinitfault and mutatorcontextinitthread on os x.
...
Copied from Perforce
Change: 192572
ServerID: perforce.ravenbrook.com
2016-10-14 12:04:01 +01:00
Gareth Rees
1a04431cff
New modulefile prmcw3.c avoids duplication of code between prmcw3i3.c and prmcw3i6.c.
...
Implement MutatorContextCheck on Windows. Add AVERT(MutatorContext, context) in PoolAccess and other functions.
Document initialization functions MutatorContextInitFault and MutatorContextInitThread and implement them on Windows.
Add a union discriminator to MutatorContextStruct on Windows so that we don't accidentally try to get the stack pointer from a fault context, or the exception address from a thread context.
Copied from Perforce
Change: 192567
ServerID: perforce.ravenbrook.com
2016-10-14 11:53:26 +01:00
Gareth Rees
4457a77a07
Initialization and checking of mutatorcontext data structures.
...
New files prmcix.c and prmcxc.c avoid duplicated code.
Copied from Perforce
Change: 192562
ServerID: perforce.ravenbrook.com
2016-10-13 23:13:40 +01:00
Gareth Rees
0abb95e025
Use protsgix.c on linux and delete protli.c.
...
Copied from Perforce
Change: 192556
ServerID: perforce.ravenbrook.com
2016-10-13 21:24:04 +01:00
Gareth Rees
a4064881dc
In protsgix.c, construct a mutatorcontext object and pass it to arenaaccess.
...
Copied from Perforce
Change: 192550
ServerID: perforce.ravenbrook.com
2016-10-13 20:12:32 +01:00
Gareth Rees
139611337a
Fix "make testmmqa" on freebsd (the shell doesn't do {a,b,c} expansion).
...
Copied from Perforce
Change: 192545
ServerID: perforce.ravenbrook.com
2016-10-13 19:31:25 +01:00
Gareth Rees
613f3f56f1
Fix comment: ll = clang/llvm, not gcc.
...
Copied from Perforce
Change: 192540
ServerID: perforce.ravenbrook.com
2016-10-13 19:15:27 +01:00
Gareth Rees
ba896883ba
Fix makefile, accidentally broken by change 192512.
...
Copied from Perforce
Change: 192539
ServerID: perforce.ravenbrook.com
2016-10-13 19:13:31 +01:00
Gareth Rees
9b3e45e883
Implement mutatorcontextsp and mutatorcontextscan for platforms w3i3 and w3i6.
...
This means that ThreadScan becomes identical on these two platforms and can be moved to thw3.c.
This means that thw3.h, thw3i3.c and thw3i6.c become redundant and can be deleted.
Copied from Perforce
Change: 192534
ServerID: perforce.ravenbrook.com
2016-10-13 16:28:50 +01:00
Gareth Rees
d83934de69
Remove return statements that have no effect.
...
Copied from Perforce
Change: 192529
ServerID: perforce.ravenbrook.com
2016-10-13 15:17:50 +01:00
Gareth Rees
b4a3d0824b
Rename the "protection mutator context" module to "mutator context" (this module handles mutator context decoding for both the protection module and the thread module).
...
Rename functions Prot{Can,}StepInstruction to MutatorContext{Can,}StepInstruction so that they follow the naming convention in guide.implc.naming.prefix.program.
Move mutator context declarations out of prot.h into new header prmc.h.
Correct .assume.null in a couple of places -- it's not safe for MutatorContextStepInstruction to return ResUNIMPL, instead MutatorContextCanStepInstruction should return FALSE.
Copied from Perforce
Change: 192528
ServerID: perforce.ravenbrook.com
2016-10-13 15:06:14 +01:00
Gareth Rees
437bf9c6a4
Rename mutatorfaultcontext to mutatorcontext because this data structure is not only used to store the context of a fault, but also to store the context of a thread that has been suspended.
...
Copied from Perforce
Change: 192523
ServerID: perforce.ravenbrook.com
2016-10-13 14:23:39 +01:00
Gareth Rees
34be22b383
Remove undocumented global mps_exception_info. now that the mps is open source, there is no difficulty in debugging the mutator context.
...
Copied from Perforce
Change: 192518
ServerID: perforce.ravenbrook.com
2016-10-13 13:45:31 +01:00
Gareth Rees
d2f3bc0e36
Fix testmmqa target in the hot variety.
...
Copied from Perforce
Change: 192515
ServerID: perforce.ravenbrook.com
2016-10-13 13:31:58 +01:00
Gareth Rees
d0ae56d7dd
Rename prot{i3,i6}.c to prmc{i3,i6}.c because these files are part of the protection mutator context module.
...
Rename prmc{i3,i6}{fr,li,w3,xc}.c to prmc{fr,li,w3,xc}{i3,i6}.c for consistency of ordering of platform codes (OS before AR before CT).
Copied from Perforce
Change: 192512
ServerID: perforce.ravenbrook.com
2016-10-13 13:24:47 +01:00
Gareth Rees
b70d93ff1f
Generate "assert_or_abort" after an abort.
...
Copied from Perforce
Change: 192506
ServerID: perforce.ravenbrook.com
2016-10-12 15:59:54 +01:00
Gareth Rees
3f917275db
Some mmqa test cases assert on windows but abort with a segmentation fault on os x. use new test outcome assert_or_abort so that these pass on all platforms.
...
Copied from Perforce
Change: 192503
ServerID: perforce.ravenbrook.com
2016-10-12 15:47:10 +01:00
Gareth Rees
6ce30c14f9
There are four states now, not three.
...
Copied from Perforce
Change: 192478
ServerID: perforce.ravenbrook.com
2016-09-27 18:49:18 +01:00
Gareth Rees
62be09b5e9
Revert incorrect change to globalspreparetodestroy (see change 192365) that made the mps assert when destroying an arena with uncollected finalization messages.
...
Copied from Perforce
Change: 192473
ServerID: perforce.ravenbrook.com
2016-09-27 11:57:19 +01:00
Gareth Rees
3ada045c72
Differentiate argerr/42.c and argerr/43.c so that the msvc incremental linker reliably updates the executable when we compile one and then the other.
...
Copied from Perforce
Change: 192467
ServerID: perforce.ravenbrook.com
2016-09-26 18:21:01 +01:00
Gareth Rees
e55abc2b62
Avoid "conversion from 'size_t' to 'unsigned long', possible loss of data" warnings from microsoft visual c.
...
Copied from Perforce
Change: 192462
ServerID: perforce.ravenbrook.com
2016-09-26 16:59:35 +01:00
Gareth Rees
6226b8677e
Avoid parentheses in parameters so that the test case passes on windows.
...
Copied from Perforce
Change: 192457
ServerID: perforce.ravenbrook.com
2016-09-26 16:17:38 +01:00
Gareth Rees
5f3e5f5ed3
Platform alignment is 16 on w3i6mv, so use mps_pf_align to avoid alignment failure.
...
Copied from Perforce
Change: 192456
ServerID: perforce.ravenbrook.com
2016-09-26 16:13:39 +01:00
Gareth Rees
afbc6e32d7
The mmqa runset command now takes multiple test-sets.
...
Copied from Perforce
Change: 192418
ServerID: perforce.ravenbrook.com
2016-09-14 16:24:34 +01:00
Gareth Rees
1a86f372b4
Update following release 1.116.0.
...
Copied from Perforce
Change: 192406
ServerID: perforce.ravenbrook.com
2016-09-14 14:18:17 +01:00
Gareth Rees
d393296238
Don't set stackprobedepth to 500 if config_pf_ansi is defined -- this leads to an assertion failure in span.c.
...
Copied from Perforce
Change: 192393
ServerID: perforce.ravenbrook.com
2016-09-14 13:03:27 +01:00
Gareth Rees
d5aa38cf65
Account allocations in amc segments between whiten and reclaim as condemned, improving the accuracy of the mortality calculation and avoiding assertion failure.
...
Copied from Perforce
Change: 192387
ServerID: perforce.ravenbrook.com
2016-09-14 12:49:51 +01:00
Gareth Rees
b157cb840b
More detailed windows test procedure.
...
Copied from Perforce
Change: 192386
ServerID: perforce.ravenbrook.com
2016-09-14 12:48:46 +01:00
Gareth Rees
a3b35aa0eb
Design.mps.nailboard.limitations.reclaim was recorded as job003856 and fixed by change 186812, so remove it from the design doc.
...
Copied from Perforce
Change: 192385
ServerID: perforce.ravenbrook.com
2016-09-14 12:48:23 +01:00
Gareth Rees
11a7874780
Fix references; automated procedure needs -g option.
...
Copied from Perforce
Change: 192375
ServerID: perforce.ravenbrook.com
2016-09-13 17:50:35 +01:00
Gareth Rees
6398c5140d
Update mps_release in preparation for forthcoming release 1.116.0.
...
Copied from Perforce
Change: 192370
ServerID: perforce.ravenbrook.com
2016-09-13 17:43:39 +01:00
Gareth Rees
62f3be6400
Merge branch/2016-09-06/job004006.
...
Copied from Perforce
Change: 192365
ServerID: perforce.ravenbrook.com
2016-09-13 17:32:07 +01:00
Gareth Rees
d43cc4ef35
Fix problems noted in review.
...
Copied from Perforce
Change: 192357
ServerID: perforce.ravenbrook.com
2016-09-13 17:19:07 +01:00
Gareth Rees
cb0c6eabef
Catch-up merge from custom/cet/branch/2016-09-13/job004006 to branch/2016-09-06/job004006.
...
Copied from Perforce
Change: 192351
ServerID: perforce.ravenbrook.com
2016-09-13 15:33:31 +01:00
Gareth Rees
e12c85c4d4
Support for customer task branches.
...
Copied from Perforce
Change: 192340
ServerID: perforce.ravenbrook.com
2016-09-13 12:41:52 +01:00
Gareth Rees
eeec77975c
Merge branch/2016-09-12/job004020.
...
Copied from Perforce
Change: 192325
ServerID: perforce.ravenbrook.com
2016-09-13 10:50:21 +01:00
Gareth Rees
992e13c87c
Mmqa test suite now passes on freebsd.
...
Copied from Perforce
Change: 192320
ServerID: perforce.ravenbrook.com
2016-09-13 10:19:03 +01:00
Gareth Rees
a4b15a8371
Avoid warnings from gcc 4.2 on freebsd.
...
Copied from Perforce
Change: 192310
ServerID: perforce.ravenbrook.com
2016-09-12 14:39:55 +01:00
Gareth Rees
99d99d597a
Predictable address space layout is only a problem on freebsd.
...
Copied from Perforce
Change: 192305
ServerID: perforce.ravenbrook.com
2016-09-12 13:58:00 +01:00
Gareth Rees
a978af06c3
Need gmake on freebsd ("make" is bsd make).
...
Copied from Perforce
Change: 192297
ServerID: perforce.ravenbrook.com
2016-09-12 12:53:25 +01:00
Gareth Rees
cf6950631e
New mmqa command debug compiles a test case and launches the debugger.
...
Copied from Perforce
Change: 192290
ServerID: perforce.ravenbrook.com
2016-09-12 12:26:40 +01:00