Gareth Rees
71c820ca54
Fix problems noted by rb in review < https://info.ravenbrook.com/mail/2014/06/18/14-06-43/0/ >
...
Copied from Perforce
Change: 186667
ServerID: perforce.ravenbrook.com
2014-06-18 15:36:35 +01:00
Gareth Rees
96a62c5d4f
Catch-up merge from branch/2014-05-28/align to branch/2014-06-14/vm.
...
Copied from Perforce
Change: 186664
ServerID: perforce.ravenbrook.com
2014-06-17 15:52:16 +01:00
Gareth Rees
07912c0833
Fix problems noted by dl in review < https://info.ravenbrook.com/mail/2014/06/17/13-35-38/0/ >.
...
Copied from Perforce
Change: 186662
ServerID: perforce.ravenbrook.com
2014-06-17 15:15:32 +01:00
Gareth Rees
d7a8949891
Put the portable part of the vm interface in its own module.
...
Copied from Perforce
Change: 186630
ServerID: perforce.ravenbrook.com
2014-06-14 16:09:06 +01:00
Gareth Rees
bcbaa67af9
Macros for vmbase etc.
...
Copied from Perforce
Change: 186626
ServerID: perforce.ravenbrook.com
2014-06-14 15:50:13 +01:00
Gareth Rees
b1b8c84c0a
Store the vm descriptor in the vmarena and vmchunk structures.
...
Copied from Perforce
Change: 186624
ServerID: perforce.ravenbrook.com
2014-06-14 15:12:26 +01:00
Gareth Rees
1f8345de6d
Fix compilation on windows.
...
Copied from Perforce
Change: 186594
ServerID: perforce.ravenbrook.com
2014-06-13 18:18:06 +01:00
Gareth Rees
c975f64296
Improve the diff and make the vm implementations more closely parallel.
...
Copied from Perforce
Change: 186591
ServerID: perforce.ravenbrook.com
2014-06-13 17:59:37 +01:00
Gareth Rees
831f551eec
Now that we can call vmpagesize without having a vm to hand, the implementation of vmcreate can be simpler: in particular, the grain size can already be correctly rounded up.
...
Copied from Perforce
Change: 186590
ServerID: perforce.ravenbrook.com
2014-06-13 17:39:58 +01:00
Gareth Rees
88c85abc0e
Vmpagesize now takes no arguments -- this avoids suggesting (incorrectly) that it might return a different value for each vm.
...
New function ProtGranularity returns the protection granularity of the operating system. (On all currently supported operating systems this is the same as the granularity of memory mapping returned by VMPageSuze, but it's important to separate these concepts.) MPMCheck asserts that the granularity of memory mapping is a multiple of the granularity of protection.
Client arena supports MPS_KEY_ARENA_GRAIN_SIZE.
Some of the test cases set the arena grain size.
Copied from Perforce
Change: 186588
ServerID: perforce.ravenbrook.com
2014-06-13 17:19:23 +01:00
Gareth Rees
1dd8a0fa26
Merge branch/2014-06-11/grain into branch/2014-05-28/align.
...
Copied from Perforce
Change: 186561
ServerID: perforce.ravenbrook.com
2014-06-13 13:35:14 +01:00
Gareth Rees
5aba28db8d
Rename vmgrainsize to vmpagesize (because it is in fact the operating system page size) and to avoid confusion with the arena grain size.
...
Copied from Perforce
Change: 186543
ServerID: perforce.ravenbrook.com
2014-06-12 17:18:50 +01:00
Gareth Rees
e50888e0c5
Fix problems identified by dl in review < https://info.ravenbrook.com/mail/2014/06/12/15-04-02/0/ >.
...
Copied from Perforce
Change: 186542
ServerID: perforce.ravenbrook.com
2014-06-12 17:11:09 +01:00
Gareth Rees
d897119121
Rename grainsizecheck as arenagrainsizecheck.
...
Copied from Perforce
Change: 186506
ServerID: perforce.ravenbrook.com
2014-06-11 17:33:10 +01:00
Gareth Rees
bfb0b771dd
Rename "arena alignment" to "arena grain size" to avoid confusion with ordinary structure alignment.
...
Copied from Perforce
Change: 186503
ServerID: perforce.ravenbrook.com
2014-06-11 17:13:03 +01:00
Gareth Rees
2129f452ed
Configurable arena alignment on windows.
...
Copied from Perforce
Change: 186380
ServerID: perforce.ravenbrook.com
2014-05-30 13:53:01 +01:00
Gareth Rees
57b3acfb7d
Don't lie about the reserved size.
...
Copied from Perforce
Change: 186376
ServerID: perforce.ravenbrook.com
2014-05-30 13:05:26 +01:00
Gareth Rees
ffe358cca8
Fix problems identified by rb in review < https://info.ravenbrook.com/mail/2014/05/29/13-01-02/0/ >.
...
Copied from Perforce
Change: 186347
ServerID: perforce.ravenbrook.com
2014-05-29 14:50:36 +01:00
Gareth Rees
9c8713f51b
Fix problems found by coverity. see < https://info.ravenbrook.com/mail/2014/04/10/23-23-42/0/ > for full analysis.
...
Copied from Perforce
Change: 185445
ServerID: perforce.ravenbrook.com
2014-04-11 00:26:48 +01:00
Gareth Rees
1c4ff669ac
Remove diag facility.
...
Copied from Perforce
Change: 182553
ServerID: perforce.ravenbrook.com
2013-06-05 18:35:40 +01:00
Gareth Rees
3c48eff730
On platform lii6gc, the mps needs a bunch of symbols which are not defined if the -ansi option is given to gcc. these can be enabled by defining features like _gnu_source, but all headers share a common set of features (via <feature.h>) and so all sources in the same compilation unit must turn on the same set of features. make sure this happens by turning on the features in config.h (not mpstd.h).
...
Remove <string.h> from mpsi.h (not needed).
Copied from Perforce
Change: 182124
ServerID: perforce.ravenbrook.com
2013-05-23 19:35:47 +01:00
Richard Brooksby
c0a8608bf7
Basically working keyword arguments, though vmparam is unsatisfactory.
...
Copied from Perforce
Change: 181545
ServerID: perforce.ravenbrook.com
2013-05-03 17:20:35 +01:00
Richard Brooksby
ac2e186e65
Removing half-finished code line. oops.
...
Copied from Perforce
Change: 181540
ServerID: perforce.ravenbrook.com
2013-05-02 17:59:58 +01:00
Richard Brooksby
1bc62b27ef
First draft of keyword arguments. mainly checking in in order to try working with git fusion on this branch.
...
Copied from Perforce
Change: 181538
ServerID: perforce.ravenbrook.com
2013-05-02 17:55:07 +01:00
Richard Brooksby
4009b8a559
Abolishing eventgen.pl. event structures are now expanded by the preprocessor.
...
Abolishing event formats. Each event now has its own structure.
Event parameters are now written directly into the event buffer, rather than being copied twice.
Copied from Perforce
Change: 179010
ServerID: perforce.ravenbrook.com
2012-08-21 22:48:11 +01:00
Richard Brooksby
13ba70d2dd
Fixing warnings revealed by xcode (clang).
...
Copied from Perforce
Change: 178898
ServerID: perforce.ravenbrook.com
2012-08-11 09:30:24 +01:00
David Lovemore
4ee202d5cf
Adding casts to varargs in diagnostic output
...
Copied from Perforce
Change: 178092
ServerID: perforce.ravenbrook.com
2012-05-03 15:17:04 +01:00
Richard Kistruck
e82d034c98
Mps br/vmem: prepare for simple-chunk-return:
...
arenavm.c: VMFree is okay for testing chunk-ret; though just sparePagesPurge() for now;
diag.c: show what we want for using zcoll to show chunk-ret:
VM_ix_Create/Destroy
TraceStart, excpet only briefly for dyn-crit (why=2) and not at all for minor
locus.c: no newline on "condemn gens" diag please
tract.c: ChunkDecache is BROKEN; just add AVER to catch this for now
vmix.c: VM_ix_Create_ok/VM_ix_Destroy (vmw3.c needs similar)
zcoll.c:
release after mps_arena_collect!!!
make, collect, make, collect, to show chunk-ret
10MB arena means many chunks
None of this is releaseable quality of course.
Copied from Perforce
Change: 170071
ServerID: perforce.ravenbrook.com
2010-03-20 13:51:23 +00:00
David Jones
671245b7e8
Mps: linux: using vmix rather than vmli
...
Copied from Perforce
Change: 162974
ServerID: perforce.ravenbrook.com
2007-07-20 19:15:15 +01:00
David Jones
13d6a785d2
Mps: removing "freebsd" from cut-and-paste mistake.
...
Copied from Perforce
Change: 161981
ServerID: perforce.ravenbrook.com
2007-03-22 14:21:41 +00:00
David Jones
b15e62f850
Mps: replaced vmxc.c with vmix.c
...
Copied from Perforce
Change: 161917
ServerID: perforce.ravenbrook.com
2007-03-12 12:16:18 +00:00