Gareth Rees
296ac3bccf
Improve the usability of the test suite:
...
1. "make test" now reports the name of the test case before running it, so that when you look back through the test output you can see which test case failed.
2. "make test" now collects the standard output from all the tests to a log file in /tmp, so that this does not clutter the user's terminal, and so that nothing is lost if the output exceeds the terminal's scrollback.
3. Each test case now prints a success message ("Conclusion: Failed to find any defects.") to standard output (not standard error) so that these messages do not clutter up the terminal when running "make test".
4. Each test case now uses its result code (not the printed message) to indicate whether it succeeded or failed.
5. More of the diagnostic messages from the test cases now start by printing argv[0] so that it is easier to tell which test case was running.
Copied from Perforce
Change: 181071
ServerID: perforce.ravenbrook.com
2013-03-07 13:13:32 +00:00
Richard Brooksby
383b590b40
Minor tweaks to allow amcssth test to build under lii3gc at least.
...
Copied from Perforce
Change: 180963
ServerID: perforce.ravenbrook.com
2013-02-20 13:35:23 +00:00
Richard Brooksby
5b557ecfb6
Deprecating the mps trampoline by using vectored exception handling on windows.
...
Copied from Perforce
Change: 180961
ServerID: perforce.ravenbrook.com
2013-02-20 12:11:40 +00:00
Richard Brooksby
4f60f9698c
Merging spelling corrections contributed by bruce mitchener.
...
See <1c80ccb634 >.
Copied from Perforce
Change: 180956
ServerID: perforce.ravenbrook.com
2013-02-18 15:46:39 +00:00
Richard Brooksby
85af2e8217
Integrating branch/2012-10-09/user-guide back to master.
...
Copied from Perforce
Change: 180943
ServerID: perforce.ravenbrook.com
2013-02-08 16:17:34 +00:00
Gareth Rees
d695d3cc2c
Undo changes 180370 and 180390 (which supported interior pointers by checking all nails in an object), as these changes are not suitable for release. work around job003359 for the example scheme interpreter by setting the compilation option -fno-inline-functions.
...
Copied from Perforce
Change: 180941
ServerID: perforce.ravenbrook.com
2013-02-08 15:36:50 +00:00
Gareth Rees
c952b0e319
Merge 64-bit xcode support from measurement branch.
...
Copied from Perforce
Change: 180937
ServerID: perforce.ravenbrook.com
2013-02-08 14:52:53 +00:00
Gareth Rees
b16ea3b315
Print event code in uppercase hexadecimal for consistency.
...
Copied from Perforce
Change: 180936
ServerID: perforce.ravenbrook.com
2013-02-08 14:52:05 +00:00
Gareth Rees
a4a18a1a27
More build/install improvements:
...
1. Name the command-line tools with the "mps" prefix throughout, for consistency between build and installation.
2. Don't build "mpseventsql.exe" by default on Windows.
3. Instructions for building mpseventsql on the supported platforms.
Copied from Perforce
Change: 180913
ServerID: perforce.ravenbrook.com
2013-02-05 15:43:41 +00:00
Gareth Rees
30b0851159
Build extra_targets. in particular, build eventsql only if configured to do so.
...
Copied from Perforce
Change: 180912
ServerID: perforce.ravenbrook.com
2013-02-05 15:03:47 +00:00
Gareth Rees
e375f6c353
Improvements to the mps build/installation process:
...
1. Build eventtxt on Mac OS X (add "eventtxt" as dependency for "all" target).
2. In configure, check for the existence of the header "sqlite3.h" and set EXTRA_TARGETS accordingly.
3. In top-level Makefile, install all targets in EXTRA_TARGETS.
Copied from Perforce
Change: 180907
ServerID: perforce.ravenbrook.com
2013-02-05 13:34:42 +00:00
Gareth Rees
5c9edb0a0e
Avoid error "variable 'res' set but not used" from gcc.
...
Copied from Perforce
Change: 180905
ServerID: perforce.ravenbrook.com
2013-02-04 17:32:13 +00:00
Gareth Rees
5037db4cd1
Merge changes 180885 and 180887 from branch/2012-10-10/measurement to branch/2012-10-09/user-guide.
...
Copied from Perforce
Change: 180904
ServerID: perforce.ravenbrook.com
2013-02-04 16:44:34 +00:00
Gareth Rees
4e61a0e564
Don't #error if defined(mps_build_ll) and __has_builtin(__builtin_readcyclecounter). put a todo here instead, referencing job003411.
...
Copied from Perforce
Change: 180903
ServerID: perforce.ravenbrook.com
2013-02-04 16:40:28 +00:00
Nick Barnes
6bddce8382
Get eventcnv/txt/sql working on fri3gc.
...
Copied from Perforce
Change: 180887
ServerID: perforce.ravenbrook.com
2013-01-31 14:54:35 +00:00
Nick Barnes
2d9c5608d3
Port eventsql and friends to windows 7.
...
Copied from Perforce
Change: 180885
ServerID: perforce.ravenbrook.com
2013-01-30 16:06:59 +00:00
Gareth Rees
eb8c674a1c
Integrate changes from branch/2012-10-10/measurement.
...
Copied from Perforce
Change: 180506
ServerID: perforce.ravenbrook.com
2012-11-20 10:50:12 +00:00
Gareth Rees
bfb81e3e9c
New type mps_label_t for telemetry labels.
...
Deprecate "candy machine" interface to telemetry control.
Implement and document straightforward get/set/reset interface.
Put a TODO referencing job003387 and job003388.
Copied from Perforce
Change: 180495
ServerID: perforce.ravenbrook.com
2012-11-16 16:42:41 +00:00
Gareth Rees
eb26a4acf9
New file "mpscmv2.h" just #include "mpscmvt.h", for backwards compatibility.
...
Copied from Perforce
Change: 180490
ServerID: perforce.ravenbrook.com
2012-11-16 14:48:53 +00:00
Gareth Rees
1c0af37416
Rename "mpscmv2.h" to "mpscmvt.h" for consistency.
...
Copied from Perforce
Change: 180489
ServerID: perforce.ravenbrook.com
2012-11-16 14:48:14 +00:00
Nick Barnes
3dd02c563b
Exit(exit_success) after usage message.
...
Copied from Perforce
Change: 180484
ServerID: perforce.ravenbrook.com
2012-11-16 10:22:29 +00:00
Nick Barnes
6d89b1b364
Somehow i introduced an uninitialized variable bug into eventflush(). oops.
...
Copied from Perforce
Change: 180482
ServerID: perforce.ravenbrook.com
2012-11-15 22:07:28 +00:00
Nick Barnes
991de7b0dd
Remove assertion which requires a higher-resolution clock() than freebsd has. document an alternative mps_clock() implementation using getrusage().
...
Copied from Perforce
Change: 180481
ServerID: perforce.ravenbrook.com
2012-11-15 22:06:49 +00:00
Nick Barnes
dfa8795389
Correct comment regarding mps_clocks_per_sec().
...
Copied from Perforce
Change: 180480
ServerID: perforce.ravenbrook.com
2012-11-15 19:30:47 +00:00
Gareth Rees
ba56a53ed7
New event "arenasetemergency".
...
Copied from Perforce
Change: 180479
ServerID: perforce.ravenbrook.com
2012-11-15 14:08:13 +00:00
Gareth Rees
b30f6576b8
Restore "res = resok" to eventflush (removed in change 180152).
...
Copied from Perforce
Change: 180471
ServerID: perforce.ravenbrook.com
2012-11-14 17:46:03 +00:00
Gareth Rees
8f92405faa
Integrate nb's changes from the measurement branch.
...
Copied from Perforce
Change: 180465
ServerID: perforce.ravenbrook.com
2012-11-14 14:09:49 +00:00
Gareth Rees
9abd71b394
Events have to be inside the arena lock.
...
Copied from Perforce
Change: 180463
ServerID: perforce.ravenbrook.com
2012-11-13 17:59:41 +00:00
Nick Barnes
5a5f96782e
Tidy up the event pipeline.
...
Copied from Perforce
Change: 180460
ServerID: perforce.ravenbrook.com
2012-11-13 12:51:58 +00:00
Gareth Rees
f4c255c9a4
Add two new events:
...
* ArenaAccess for handling barrier hits;
* ArenaPoll for choosing a quantum of work.
Copied from Perforce
Change: 180432
ServerID: perforce.ravenbrook.com
2012-11-09 15:19:35 +00:00
Gareth Rees
81c3657b37
Use a typedef for the type of the function passed to mps_amc_apply to make the documentation clearer while remaining backwards-compatible.
...
(This was change 179975 but got reversed accidentally by change 180236.)
Copied from Perforce
Change: 180431
ServerID: perforce.ravenbrook.com
2012-11-09 11:15:16 +00:00
Gareth Rees
59d1ac152b
Amcnailrangeisunmarked needs to take arguments as client pointers and look at the nails for the corresponding base pointers.
...
Copied from Perforce
Change: 180390
ServerID: perforce.ravenbrook.com
2012-11-07 17:17:05 +00:00
Gareth Rees
c333f64f3f
Add public interface for mfs pool class.
...
Correct the documentation for MFS: constructor takes extend_by and unit_size in that order.
Copied from Perforce
Change: 180372
ServerID: perforce.ravenbrook.com
2012-11-06 17:08:58 +00:00
Gareth Rees
5fb7359d34
Support ambiguous interior pointers in amc by checking to see if any grain in an object is nailed (not just the first grain).
...
AMCSegDescribe shows which grains are nailed.
Copied from Perforce
Change: 180370
ServerID: perforce.ravenbrook.com
2012-11-06 15:47:21 +00:00
Gareth Rees
e11e83d909
Amc can't omit the guard "segrankset(seg) != ranksetempty" for calling segsetgrey, because amcz uses segments with an empty rank set.
...
It's OK to call SegSetGrey on a segment with an empty rank set so long as you are not actually setting it to be grey for any traces, so correct the AVER accordingly.
Copied from Perforce
Change: 180236
ServerID: perforce.ravenbrook.com
2012-11-01 17:21:57 +00:00
Nick Barnes
917e3197b5
Remove unused mps_t_longest type.
...
Copied from Perforce
Change: 180169
ServerID: perforce.ravenbrook.com
2012-10-30 17:14:45 +00:00
Nick Barnes
1a66f62952
Add mps_clocks_per_sec to the eventinit header, and put some header-checking code into eventcnv, so now we have at least a rudimentary check that a binary event log is readable.
...
Copied from Perforce
Change: 180160
ServerID: perforce.ravenbrook.com
2012-10-30 14:15:27 +00:00
Gareth Rees
2c221f5bcf
Integrate nb's clock changes. mps_clock_t now an alias for mps_word_t.
...
Copied from Perforce
Change: 180153
ServerID: perforce.ravenbrook.com
2012-10-30 11:12:38 +00:00
Nick Barnes
9ba10aeae4
Make eventclocksync events, and output them once per buffer flush.
...
Copied from Perforce
Change: 180152
ServerID: perforce.ravenbrook.com
2012-10-30 09:36:30 +00:00
Nick Barnes
292d0108a5
change mps_clock_t to word.
...
Copied from Perforce
Change: 180151
ServerID: perforce.ravenbrook.com
2012-10-30 08:43:39 +00:00
Nick Barnes
6c3d2405fc
Take out debugging printfs. oops.
...
Copied from Perforce
Change: 180110
ServerID: perforce.ravenbrook.com
2012-10-26 19:16:59 +01:00
Richard Brooksby
dd88c80114
Tidying up case-insensitive mps_telemetry_control implementation a bit.
...
Copied from Perforce
Change: 180109
ServerID: perforce.ravenbrook.com
2012-10-26 17:04:30 +01:00
Gareth Rees
33d375ab74
Merge nb's eventcnv changes and rewrite guide/debug and topic/telemetry accordingly.
...
Copied from Perforce
Change: 180103
ServerID: perforce.ravenbrook.com
2012-10-26 14:35:10 +01:00
Nick Barnes
b407283356
Add an eventinit event, giving various parameters including the event system version.
...
Copied from Perforce
Change: 180100
ServerID: perforce.ravenbrook.com
2012-10-26 13:22:04 +01:00
Nick Barnes
d17d0b87ea
Make mps_telemetry_control case-insensitive, and make it accept "all" as an event class.
...
Copied from Perforce
Change: 180098
ServerID: perforce.ravenbrook.com
2012-10-26 13:03:44 +01:00
Gareth Rees
aaa0f6c7d9
No need to include "mpsavm.h". the comment justifying it was bogus: "only for mps_space_create".
...
Copied from Perforce
Change: 180093
ServerID: perforce.ravenbrook.com
2012-10-26 09:51:12 +01:00
Nick Barnes
ed914cd37f
Further simplify the eventcnv text output format.
...
Copied from Perforce
Change: 180054
ServerID: perforce.ravenbrook.com
2012-10-24 16:10:46 +01:00
Nick Barnes
0e6cea6157
Integrate gdr's somewhat cut-down eventcnv code.
...
Copied from Perforce
Change: 180046
ServerID: perforce.ravenbrook.com
2012-10-24 11:12:17 +01:00
Gareth Rees
9c4ac84129
Remove comment following discussion with rb: "assumes pun compatibility between rank and mps_rank_t which is checked by mpsi_check in <code/mpsi.c>" as this is no longer true: ranks no longer appear in the public interface, so their pun compatibility is no longer checked.
...
Copied from Perforce
Change: 180031
ServerID: perforce.ravenbrook.com
2012-10-23 15:42:17 +01:00
Gareth Rees
7758f39a77
Remove reporting features from eventcnv, as discussed with rb. eventcnv was always intended to be a simple tool that just translates events, not a report generator. in particular:
...
* Remove -e option and associated event specification parsing.
* Remove -b option and bucket statistics.
* Don't intern labels (always print addresses).
* Remove -v option (events are always output).
* If -h or -? is specified, exit after printing help message.
* Help text refer to the "Telemetry" section of reference manual.
Copied from Perforce
Change: 180028
ServerID: perforce.ravenbrook.com
2012-10-23 14:28:22 +01:00