| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
1. Avoid looping over two expressions in parallel when one makes more
sense (compilers can do strength reduction optimization: we don't
need to do it ourselves).
2. Introduce macro ITER_PARALLEL for iterating over two expressions in
parallel, to clarify the intention and explain the need for the
cast to void in the implementation.
3. Add macros SAC_LARGE_ITER and SAC_SMALL_ITER to reduce the amount
of code duplication in sac.c.
|
| |
|
|
|
|
|
|
|
|
| |
The -Wcomma option appears to be turned on automatically by Xcode
12.3, so it's a good idea for the MPS to build with the option, to
avoid unpleasant surprises when people update their Xcode.
The simplest way to suppress the warning is to cast the left hand side
of the comma operator to void.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang 10 turns on -Wimplicit-int-float-conversion, and on 64-bit
platforms this issues a warning that implicit conversions to double
from Size and unsigned long "may lose precision".
This commit adds casts to (double) for all such conversions. The loss
of precision is either impossible in practice (because a double can
represent all integers up to 2**53, which is about 9 petabytes, well
beyond the addressing capabilities for current CPUs), or else
acceptable, because we are accumulating an approximate quantity like
"collection work" or "fill size" (that has to cope with loss of
precision due in any case), or computing a threshold like the spare
commit limit where it is acceptable for it to be somewhat approximate.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Publish minor changes to readme and configure files in main directory.
Main directory and code directory licence texts are now fully updated.
Copied from Perforce
Change: 196994
|
| |
|
|
|
|
| |
Copied from Perforce
Change: 193793
|
| |
|
|
|
|
| |
Copied from Perforce
Change: 193768
|
| |
|
|
|
|
|
|
|
| |
arenapoll. this avoids a loop if the live set is large enough to provoke the "dynamic criterion".
Copied from Perforce
Change: 191274
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
64 bits (was 64-bit shift intended?)" from microsoft visual c.
Copied from Perforce
Change: 191138
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 190472
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 187055
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 186788
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
scaling up the whole allocation).
Remove hack from rnd_grain -- this was covering up a bug.
Base the AMC "large" segment determination on the requested object size, not the (rounded up) segment size.
Assert in the case where largeSize < extendBy: this has bad space performance.
Copied from Perforce
Change: 186755
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
we don't meet the commit limit requirements.
Copied from Perforce
Change: 186697
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 186680
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
<https://info.ravenbrook.com/mail/2014/06/18/14-40-10/0/>
Copied from Perforce
Change: 186669
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 185340
ServerID: perforce.ravenbrook.com
|
| |\
| |
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 185074
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
that are no longer generated by the code, so that we get the maximum checking from this compiler.
Copied from Perforce
Change: 185072
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
<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
|
| |/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Refactor nmake files so that a compiler-specific makefile is included; move Microsoft Visual C-specific options to mv.nmk.
* Add nmake files for Pelles (w3i3pc.nmk and pc.nmk).
* Rename spw3i3mv.c to spw3i3.c and spw3i6mv.c to spw3i6.c since these are also used by Pelles C.
* Make reasonable changes to the source code to avoid warnings from Pelles C:
** check results of function calls;
** avoid useless return values;
** undef max before defining it;
** ensure printf formats are checkable;
** move notreached() assertions to the end of blocks;
** suppress warnings in cases where the code shouldn't be changed ("Unreachable code", "Inline assembly code is not portable", "Structured Exception Handling is not portable").
Copied from Perforce
Change: 184977
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
more meaningful output, and to eliminate redundant code.
Copied from Perforce
Change: 184382
ServerID: perforce.ravenbrook.com
|
| |\
| |
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 184103
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
test suite doesn't get suspended waiting for someone to press a button.
Copied from Perforce
Change: 183041
ServerID: perforce.ravenbrook.com
|
| |/
|
|
|
|
|
| |
Copied from Perforce
Change: 182776
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 182495
ServerID: perforce.ravenbrook.com
|
| |\
| |
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 182417
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Includes installable assertion handler, events in circular memory buffers, LARGEADDRESSAWARE, etc.
Copied from Perforce
Change: 182176
ServerID: perforce.ravenbrook.com
|
| |\ \
| |/
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 182135
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 182131
ServerID: perforce.ravenbrook.com
|
| |/
|
|
|
|
|
|
|
| |
duplication and makes test cases repeatable.)
Copied from Perforce
Change: 182046
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
use it to choose the random number seed.
Copied from Perforce
Change: 181855
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 179309
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 178898
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
testlib.c (comments only) record dates of changes from v1 -> v2 -> v3 rnd_states.
Copied from Perforce
Change: 170094
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
zcoll.c:
How to get rid of all the objects, so full collect really collects all automatic objects:
- Rootdrop() helps, but we can still retain a 1.2MB object;
- stackwipe() does not help much -- these unwanted ambig refs are being left on the stack by MPS code that runs between mps_arena_collect and the flip!
- therefore StackScan(0/1) to destroy stack+reg root before full collect: it's the only way to be sure.
Reproducibility:
- give Make() a random? switch, acted on by df() = diversity function, to allow bypass of rnd();
- ZRndStateSet, to set the seed for rnd()
Output:
- print_M: switchable Mebibytes or Megabytes (more useful, to be honest);
- get(): don't report message times, it messes up diffs.
testlib.c/h:
Reproducibility:
- fix rnd_state so a rnd_state getter is possible;
- testlib.h += rnd_state_t, rnd_state(), rnd_state_set(), rnd_state_set_v2()
trace.c: traceFindGrey diag: no newline please
Copied from Perforce
Change: 170093
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
'r' may be used without having been initialized"
Copied from Perforce
Change: 167378
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 167192
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
| |
Copied from Perforce
Change: 167188
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
Use a = 48271. Use fast implementation. Much improved verification by rnd_verify().
Copied from Perforce
Change: 167182
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
|
|
| |
0..32000 values is a throughly defective way to seed the generator). correct it to simply use timestamp (modulo m) as the initial seed, and then iterate 10 times.
rnd(): add notes, and create rnd_verify() to confirm implementation is correct.
Copied from Perforce
Change: 167181
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
necessary for VC9 builds.
Copied from Perforce
Change: 166497
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
is where it is needed
Copied from Perforce
Change: 166143
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
|
|
| |
(unknown if these changes are effective, but they should be safe)
1. mpm.c: +1 to array size to make room for terminator of string initializer;
2. testlib.c: disable warning 4702: unreachable code, for va_end.
Copied from Perforce
Change: 158055
ServerID: perforce.ravenbrook.com
|
| |
|
|
|
|
|
|
|
| |
avoid confusion.
Copied from Perforce
Change: 30258
ServerID: perforce.ravenbrook.com
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Making some new files consistent with changes from that branch.
Deleting some new Global Graphics confidential files.
Copied from Perforce
Change: 30256
ServerID: perforce.ravenbrook.com
|
| | |
| |
| |
| |
| |
| |
| | |
Copied from Perforce
Change: 29900
ServerID: perforce.ravenbrook.com
|