Gareth Rees
94d5fed788
Merge branch/2014-01-15/nailboard into branch/2014-03-25/ansi to pick up nailboardtest windows fix.
...
Copied from Perforce
Change: 185043
ServerID: perforce.ravenbrook.com
2014-03-27 12:29:01 +00:00
Gareth Rees
d5571ac9cf
Fix typo.
...
Copied from Perforce
Change: 185042
ServerID: perforce.ravenbrook.com
2014-03-27 12:22:19 +00:00
Gareth Rees
2106c79a8f
Build nailboardtest on windows; run it on all platforms.
...
Copied from Perforce
Change: 185041
ServerID: perforce.ravenbrook.com
2014-03-27 12:12:39 +00:00
Gareth Rees
74c04b45f0
Provide three different test targets for different purposes:
...
* testrun = "smoke test", fast enough to run before every commit
* testci = continuous integration tests, must be known good
* testall = all test cases, for ensuring quality of a release
Switch the main "make test" from testrun to testci.
Put test cases into "database" so that they can be selected.
Copied from Perforce
Change: 185039
ServerID: perforce.ravenbrook.com
2014-03-27 11:52:27 +00:00
Gareth Rees
4da195068c
Add and document new configuration options config_thread_single and config_protection_none.
...
Copied from Perforce
Change: 185037
ServerID: perforce.ravenbrook.com
2014-03-26 23:19:04 +00:00
Gareth Rees
47a6cc51b5
Refactor comm.gmk so that cflags is reserved for the user. this means that if you want to build using the ansi platform you can run "make -f xci6ll.gmk cflags=-dconfig_pf_ansi".
...
Don't include the testrun target in the "all" target.
Copied from Perforce
Change: 185034
ServerID: perforce.ravenbrook.com
2014-03-26 21:23:04 +00:00
Gareth Rees
8f0f336651
Generic stack scanner implementation.
...
Copied from Perforce
Change: 185032
ServerID: perforce.ravenbrook.com
2014-03-26 17:09:49 +00:00
Gareth Rees
f119155e55
Merge branch/2014-01-15/nailboard into branch/2014-03-25/ansi to pick up airtest, which tests the stack scanning code.
...
Copied from Perforce
Change: 185031
ServerID: perforce.ravenbrook.com
2014-03-26 17:09:16 +00:00
Gareth Rees
26f1ceb523
Catch-up merge from master sources to branch/2014-01-15/nailboard.
...
Copied from Perforce
Change: 185029
ServerID: perforce.ravenbrook.com
2014-03-26 16:36:36 +00:00
Gareth Rees
d1a51c98c8
Symbols starting config_ must be confined to config.h (see design.mps.config.impl.dep).
...
Copied from Perforce
Change: 185027
ServerID: perforce.ravenbrook.com
2014-03-26 16:25:14 +00:00
Gareth Rees
4bd5435314
Fix review comments from dl < https://info.ravenbrook.com/mail/2014/03/25/17-44-56/0/ >.
...
Add __attribute__((__format__(printf))) to functions that take a printf-compatible format string (when building using GCC or Clang), so that format string mistakes can be detected statically.
Copied from Perforce
Change: 185021
ServerID: perforce.ravenbrook.com
2014-03-26 12:27:35 +00:00
Gareth Rees
1be3091e3c
New makefile xci6ll.gmk provides way to compile the mps one file at a time on os x.
...
Copied from Perforce
Change: 184991
ServerID: perforce.ravenbrook.com
2014-03-24 21:27:35 +00:00
Gareth Rees
57f2e6db8f
Support for "make -f platform.gmk testrun".
...
Copied from Perforce
Change: 184990
ServerID: perforce.ravenbrook.com
2014-03-24 21:26:42 +00:00
Gareth Rees
85649b528b
Vectors, not strings.
...
Copied from Perforce
Change: 184982
ServerID: perforce.ravenbrook.com
2014-03-24 20:33:15 +00:00
Gareth Rees
a9fbb48533
Replace hex constant 9024eac8 (gotneach) with 4026eac8 (notreach).
...
Copied from Perforce
Change: 184972
ServerID: perforce.ravenbrook.com
2014-03-24 12:13:20 +00:00
Gareth Rees
edd6409964
Don't list the test cases to be run in commpre.nmk: list them instead in testrun.bat for consistency with other platforms.
...
Format lists of files and test cases with one per line so that merges are easier.
Improve testrun.bat: better success/failure output; fewer gotos.
Copied from Perforce
Change: 184971
ServerID: perforce.ravenbrook.com
2014-03-24 12:12:24 +00:00
Gareth Rees
333840f54a
Ensure that all test cases call testlib_init so that the testlib assertion handler is installed: this ensures that on windows you can set mps_testlib_noabort to avoid the dialog box from abort().
...
Copied from Perforce
Change: 184965
ServerID: perforce.ravenbrook.com
2014-03-24 11:41:01 +00:00
Gareth Rees
15d585558e
Don't list the test cases to be run in the xcode project: list them in testrun.sh instead so that this is shared with the freebsd and linux platforms.
...
Format the list with one test case per line so that merges are easier.
Copied from Perforce
Change: 184958
ServerID: perforce.ravenbrook.com
2014-03-22 18:04:56 +00:00
Gareth Rees
96d1aec2b6
Catch-up merge from master/...@184830 to nailboard branch.
...
Copied from Perforce
Change: 184951
ServerID: perforce.ravenbrook.com
2014-03-21 22:19:10 +00:00
Gareth Rees
9930b9c807
Move coverage testing out of the xcode project (to avoid normal debug builds being slowed down by coverage instrumentation, and to avoid error messages when the tests are unable to update the coverage data).
...
Copied from Perforce
Change: 184931
ServerID: perforce.ravenbrook.com
2014-03-21 12:51:06 +00:00
Gareth Rees
14cf9d4890
Fix some checkleveldeep assertions:
...
1. In GlobalsPrepareToDestroy, set arenaGlobals->defaultChain to NULL before calling ChainDestroy, to avoid a failed ChainCheck inside ControlFree.
2. In GlobalsPrepareToDestroy, set arenaGlobals->lock to NULL after destroying it, to avoid a failed LockCheck inside ControlFree.
3. In TraceIdMessagesCreate, set tsMessage[ti] and tMessage[ti] together to avoid a failed TraceIdMessagesCheck inside traceMessageInit.
4. In TracePostStartMessage, set tsMessage[ti] to NULL before calling MessagePost, to avoid a failed TraceStartMessageCheck inside ControlFree.
5. Ditto for TracePostMessage and tMessage[ti].
Copied from Perforce
Change: 184924
ServerID: perforce.ravenbrook.com
2014-03-20 23:37:02 +00:00
Gareth Rees
3a249b1bfe
Drop .py extension from python executables, as requested by rb.
...
Copied from Perforce
Change: 184900
ServerID: perforce.ravenbrook.com
2014-03-20 11:36:58 +00:00
Gareth Rees
605a189ec8
Update release index and bump release number accordingly.
...
Copied from Perforce
Change: 184870
ServerID: perforce.ravenbrook.com
2014-03-18 18:11:48 +00:00
Gareth Rees
1747357cec
In configure.ac, parse the release name out of code/version.c.
...
This means that there is now just one place in the sources where the release name is specified.
Copied from Perforce
Change: 184830
ServerID: perforce.ravenbrook.com
2014-03-17 14:53:58 +00:00
Richard Brooksby
10f3818649
Merging branch/2014-01-17/cbs-tract-alloc into master.
...
Copied from Perforce
Change: 184783
ServerID: perforce.ravenbrook.com
2014-03-13 15:28:06 +00:00
Richard Brooksby
f6a29c8f35
Apss test relies on non-zoned client arena to test tight memory condition, but client arena is zoned by default now. fixed the test to set up a non-zoned client arena.
...
Copied from Perforce
Change: 184779
ServerID: perforce.ravenbrook.com
2014-03-13 15:00:37 +00:00
Richard Brooksby
a2f3b72b3c
Return the correct reason that arena extension failed.
...
Copied from Perforce
Change: 184777
ServerID: perforce.ravenbrook.com
2014-03-13 13:48:43 +00:00
Gareth Rees
7447c0dac2
Rangeinitcopy unused; remove.
...
Copied from Perforce
Change: 184775
ServerID: perforce.ravenbrook.com
2014-03-13 12:30:16 +00:00
Richard Brooksby
6cfc226ebd
Implementing top-down (last fit) allocation in zones.
...
Copied from Perforce
Change: 184771
ServerID: perforce.ravenbrook.com
2014-03-13 12:06:28 +00:00
Richard Brooksby
46dc29b3da
Responding to code review < https://info.ravenbrook.com/mail/2014/03/12/15-42-41/0/ >.
...
Copied from Perforce
Change: 184754
ServerID: perforce.ravenbrook.com
2014-03-12 15:45:50 +00:00
Richard Brooksby
f55d451b86
Improving rangecopy based on code review suggestion < https://info.ravenbrook.com/mail/2014/03/10/17-01-58/0/ >.
...
Copied from Perforce
Change: 184743
ServerID: perforce.ravenbrook.com
2014-03-12 11:30:05 +00:00
Richard Brooksby
996c9eab52
Arenacv is not designed to work on a zoned client arena, even though this has become a possible combination. removed that case.
...
Copied from Perforce
Change: 184742
ServerID: perforce.ravenbrook.com
2014-03-12 10:46:44 +00:00
Richard Brooksby
83ed2f72bf
Reponding to code review < https://info.ravenbrook.com/mail/2014/03/10/17-01-58/0/ >.
...
Renaming the arena’s “zoned CBS” back to earlier “free CBS”, especially since it might not be zoned.
Copied from Perforce
Change: 184738
ServerID: perforce.ravenbrook.com
2014-03-11 17:27:57 +00:00
Richard Brooksby
2a7fd3c326
Incomplete response to code review. see < https://info.ravenbrook.com/mail/2014/03/07/11-21-03/0/ >.
...
Copied from Perforce
Change: 184735
ServerID: perforce.ravenbrook.com
2014-03-11 16:39:11 +00:00
Richard Brooksby
098eb9e6d7
Catch-up merge from master.
...
Copied from Perforce
Change: 184732
ServerID: perforce.ravenbrook.com
2014-03-11 16:30:47 +00:00
Richard Brooksby
c861919d7f
Catch-up merge from masters.
...
Copied from Perforce
Change: 184728
ServerID: perforce.ravenbrook.com
2014-03-11 16:13:39 +00:00
Richard Brooksby
4a27ce10f0
Catch-up merge from branch/2014-02-22/splay-tune to pick up code review changes.
...
Copied from Perforce
Change: 184727
ServerID: perforce.ravenbrook.com
2014-03-11 16:07:19 +00:00
Richard Brooksby
4b0b5f32b3
Responding to code review < https://info.ravenbrook.com/mail/2014/03/07/18-03-14/0/ >.
...
Updating Splay Tree design document to be reasonably consistent with the current code.
Disabling tree functions not currently in use.
Copied from Perforce
Change: 184723
ServerID: perforce.ravenbrook.com
2014-03-11 15:46:51 +00:00
Richard Brooksby
d945d664bf
Improving comments in response to code review suggestions < https://info.ravenbrook.com/mail/2014/03/11/14-47-33/0/ >.
...
Copied from Perforce
Change: 184725
ServerID: perforce.ravenbrook.com
2014-03-11 15:46:51 +00:00
Richard Brooksby
0cb5069ea8
Responding to code review < https://info.ravenbrook.com/mail/2014/03/07/22-40-36/0/ >.
...
Using TREE_ELT where appropriate.
Using AVERT consistently on Tree, but see job003691.
Copied from Perforce
Change: 184724
ServerID: perforce.ravenbrook.com
2014-03-11 15:46:51 +00:00
Richard Brooksby
9e231b8784
Fixing windows build.
...
Copied from Perforce
Change: 184721
ServerID: perforce.ravenbrook.com
2014-03-11 15:22:21 +00:00
Richard Brooksby
45ddf38adc
Fixing freebsd build.
...
Copied from Perforce
Change: 184719
ServerID: perforce.ravenbrook.com
2014-03-11 14:46:47 +00:00
Gareth Rees
aa9024c3e0
Fix bug in nailboardisresrange: must return false when nail found.
...
Extract common code for size computations.
More accurate size computation using offsetof.
Macros for NailboardNewNails and NailboardClearNewNails.
Since level shift is constant (for now), use constant instead of structure slot.
Unroll NailboardSet.
Move NailboardIsResClientRange to poolamc where it belongs.
Copied from Perforce
Change: 184697
ServerID: perforce.ravenbrook.com
2014-03-08 20:02:42 +00:00
Gareth Rees
5d003f86dd
Turn nailboard test case back on (accidentally got turned off).
...
Check NailboardSet call as well as NailboardIsResRange.
Copied from Perforce
Change: 184696
ServerID: perforce.ravenbrook.com
2014-03-08 19:56:44 +00:00
Gareth Rees
b7018a3fca
Poolfix is on the critical path, so use aver_critical rather than aver.
...
Copied from Perforce
Change: 184693
ServerID: perforce.ravenbrook.com
2014-03-08 10:23:09 +00:00
Gareth Rees
1243791d24
Ensure that djbench and gcbench compile on freebsd:
...
Link fmtdy with gcbench.
RESERVE_ALLOC in djbench ignores the return values from mps_reserve and mps_commit.
Don't include alloca.h -- alloca is in stdlib.h.
Rename start, finish to begin, end to avoid "local variable shadows global" error from gcc.
Copied from Perforce
Change: 184691
ServerID: perforce.ravenbrook.com
2014-03-08 00:36:32 +00:00
Gareth Rees
cd7110d70a
Add locbwcss and locusss to the test suite on os x, freebsd and linux.
...
Add const qualifier so that locbwcss and locusss compile without warnings.
Build djbench and gcbench on FreeBSD and Linux.
Don't include <alloca.h> -- alloca is in stdlib.h.
Copied from Perforce
Change: 184689
ServerID: perforce.ravenbrook.com
2014-03-08 00:24:04 +00:00
Gareth Rees
900ea6ed20
More detailed naiboard description.
...
Copied from Perforce
Change: 184684
ServerID: perforce.ravenbrook.com
2014-03-07 21:36:48 +00:00
Gareth Rees
8fa423173c
Test nailboard alignment.
...
Copied from Perforce
Change: 184683
ServerID: perforce.ravenbrook.com
2014-03-07 21:36:12 +00:00
Gareth Rees
5d874048b2
Delete .gdbinit: it hasn't been necessary to "handle sigbus nostop" on os x since the we started using mach exceptions (change 183002).
...
Copied from Perforce
Change: 184678
ServerID: perforce.ravenbrook.com
2014-03-07 19:02:05 +00:00