1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-25 15:00:45 -08:00
Commit graph

67 commits

Author SHA1 Message Date
Gareth Rees
ef4c41df55 Ensure the emergency branch compiles and runs on lii6gc:
No need for <string.h> in mpsi.c (this defines a function "index" on Linux).
Need more headers in range.c so that it will compile on its own.
Need UNUSED() declarations for some variables in cbstest.c.

Copied from Perforce
 Change: 182113
 ServerID: perforce.ravenbrook.com
2013-05-23 13:42:08 +01:00
Richard Brooksby
8acbc5780b Quietly eliminating varargs to mps_alloc. they were never documented.
Copied from Perforce
 Change: 181843
 ServerID: perforce.ravenbrook.com
2013-05-16 03:07:50 +01:00
Gareth Rees
d0a8ac6e14 Rename mps_arena_create_args to mps_arena_create_k to match the documentation, and for consistency with mps_pool_create_k and mps_ap_create_k.
Copied from Perforce
 Change: 181722
 ServerID: perforce.ravenbrook.com
2013-05-11 19:17:06 +01:00
Richard Brooksby
688b5bf73d Converting varags on buffer and ap creation into keyword argument lists.
Copied from Perforce
 Change: 181680
 ServerID: perforce.ravenbrook.com
2013-05-09 18:25:53 +01:00
Richard Brooksby
af44d1241f Replacing varargs passed to seginit with keyword argument list.
Copied from Perforce
 Change: 181679
 ServerID: perforce.ravenbrook.com
2013-05-09 17:34:01 +01:00
Richard Brooksby
b323278e18 Implementing configurable maximum argument list length.
Copied from Perforce
 Change: 181648
 ServerID: perforce.ravenbrook.com
2013-05-08 23:47:38 +01:00
Richard Brooksby
d512863efb Moving arena varags parsing into arena class method, similar to pools. much simpler. all tests pass.
Copied from Perforce
 Change: 181643
 ServerID: perforce.ravenbrook.com
2013-05-08 23:00:00 +01:00
Richard Brooksby
71b7e4f70a Pushing varargs decoding into a pool class method. much simpler.
Copied from Perforce
 Change: 181642
 ServerID: perforce.ravenbrook.com
2013-05-08 22:43:51 +01:00
Richard Brooksby
d396431c25 Adding decoding of vararg debug options to debug pool classes.
Copied from Perforce
 Change: 181639
 ServerID: perforce.ravenbrook.com
2013-05-08 17:43:01 +01:00
Richard Brooksby
8504a81cf3 Eliminating mps_key_varargs and instead decoding deprecated varargs in one place in mpsi.c, so that each pool or other class doesn't have to deal with them.
Copied from Perforce
 Change: 181638
 ServerID: perforce.ravenbrook.com
2013-05-08 17:24:11 +01:00
Richard Brooksby
07f446a450 Converting pools to use keyword arguments, mostly, and so far inconsistently, but at least it compiles.
Copied from Perforce
 Change: 181635
 ServerID: perforce.ravenbrook.com
2013-05-08 16:21:12 +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
Gareth Rees
db733f3932 Remove "mps_alert_collection_set" from public interface and remove its implementation and test case. client programs should use the messages interface to find out what the mps is doing.
Copied from Perforce
 Change: 181119
 ServerID: perforce.ravenbrook.com
2013-03-12 14:33:27 +00:00
Gareth Rees
0dd9586930 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
6c6d7a00d6 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
Gareth Rees
3bada6378b Based on discussion with rb, reverse the sense of the comments on mps_ap_fill and mps_ap_trip.
Copied from Perforce
 Change: 179971
 ServerID: perforce.ravenbrook.com
2012-10-19 16:47:49 +01:00
Richard Brooksby
50c50c895b Eliminating interface puns that break the strict aliasing rule. the last of the structure puns and casts, i think.
Copied from Perforce
 Change: 179453
 ServerID: perforce.ravenbrook.com
2012-09-12 20:00:04 +01:00
Richard Brooksby
513aabb046 Further elimination of type puns that violate the strict aliasing rule. this change eliminates puns on the format methods.
Copied from Perforce
 Change: 179452
 ServerID: perforce.ravenbrook.com
2012-09-12 19:45:27 +01:00
Richard Brooksby
9248316fb6 Further reduction of interface puns that violate the strict aliasing rule, this time in thread function types and the corresponding threadstruct.
Copied from Perforce
 Change: 179451
 ServerID: perforce.ravenbrook.com
2012-09-12 19:32:37 +01:00
Richard Brooksby
1518dc1e13 Cleaning up obsolete references to mps_space_t.
Copied from Perforce
 Change: 179446
 ServerID: perforce.ravenbrook.com
2012-09-12 18:26:06 +01:00
Richard Brooksby
1c9b8d7eb3 Removing enternal/external type puns from segregated allocation caches.
Copied from Perforce
 Change: 179383
 ServerID: perforce.ravenbrook.com
2012-09-10 11:12:28 +01:00
Richard Brooksby
75837d8376 Fixing type puns around arenapeek and arenapoke by allowing them to take a ref * to get a ref, rather than an addr.
Copied from Perforce
 Change: 179382
 ServerID: perforce.ravenbrook.com
2012-09-10 10:33:22 +01:00
Richard Brooksby
78d5f049f0 Eliminating type puns on scan states, location dependencies, and allocation points through the mps interface.
Now that we're recommending inlining with client code and optimising with -O2 or -O3, we can't afford any bug introduced by the strict aliasing rule.

Copied from Perforce
 Change: 179322
 ServerID: perforce.ravenbrook.com
2012-09-07 12:58:57 +01:00
Richard Brooksby
858e4ac0ac Partial merge of branch/2012-07-23/cet-transform, excluding cet-specific parts.
Copied from Perforce
 Change: 179309
 ServerID: perforce.ravenbrook.com
2012-09-06 17:17:18 +01:00
Richard Brooksby
27c6706791 Merging branch/2012-08-21/diagnostic-telemetry.
Copied from Perforce
 Change: 179289
 ServerID: perforce.ravenbrook.com
2012-09-05 23:45:31 +01:00
Richard Brooksby
be2a97a673 Checking and suppressing warnings revealed by higher level of optimisation and building from mps.c on freebsd.
Copied from Perforce
 Change: 179195
 ServerID: perforce.ravenbrook.com
2012-09-03 13:42:08 +01:00
Richard Brooksby
fa0bfed44e Removing product-specific configuration, including dylan- and scriptworks-specific targets and config_prod configurations. we should support any necessary requirements generically.
It's now possible to write "cc -c mps.c" and get a sensible result.

Copied from Perforce
 Change: 179169
 ServerID: perforce.ravenbrook.com
2012-09-02 10:39:42 +01:00
Richard Brooksby
89a685f164 Renaming some check* macros with more accurate names, making remaining check* macros similar in function.
Copied from Perforce
 Change: 179155
 ServerID: perforce.ravenbrook.com
2012-09-01 10:18:08 +01:00
Richard Brooksby
7047e27cd1 Writing events into separate buffers by kind.
Always recording events into buffers, but only writing them to the telemetry stream if they're enabled.

Copied from Perforce
 Change: 179136
 ServerID: perforce.ravenbrook.com
2012-08-31 16:09:07 +01:00
Richard Kistruck
640b8b5cb8 Mps br/padding (fix w3i3m9 build) mpsi.c: help compiler see format is never uninitialised
Copied from Perforce
 Change: 169862
 ServerID: perforce.ravenbrook.com
2010-02-26 16:56:05 +00:00
Richard Kistruck
e2598917f4 mps br/padding: mps_addr_pool(), mps_addr_fmt() -- new mps functions
mps.h, mpsicv.c: implementation
 mpsicv.c: new addr_pool_test(), to test them
 w3gen.def: export them
 walkt0.c: test them within mps_arena_formatted_objects_walk().  (Also checks against values passed to stepper function, and against what we expect).
 tool/test-runner.py: add walkt0

Copied from Perforce
 Change: 169861
 ServerID: perforce.ravenbrook.com
2010-02-26 16:33:49 +00:00
Richard Kistruck
a563a76204 Mps br/timing: mps_alert_collection_set() -- client sets a callback
function; MPS calls it synchronously on collection start/stop 
(immediately after posting start/stop message).  The callback 
receives two ints: alertcode (start|stop; see mps.h), and whycode 
(trace->why).  Note: callback is also called for heap walk 
start/stop.
amcss.c: show start/stop alerts.

Copied from Perforce
 Change: 166703
 ServerID: perforce.ravenbrook.com
2008-11-12 15:07:04 +00:00
Richard Kistruck
38d28de534 Mps br/timing: new type "clock", internal equivalent of mps_clock_t.
Used for a field in messages.  (More uses to follow).

Copied from Perforce
 Change: 166697
 ServerID: perforce.ravenbrook.com
2008-11-11 16:57:30 +00:00
Richard Kistruck
32031684e2 Mps br/timing: mpsi_check(): check that external and internal messsage types match.
Copied from Perforce
 Change: 166696
 ServerID: perforce.ravenbrook.com
2008-11-11 16:22:26 +00:00
Richard Kistruck
62fb0f32ae Mps br/timing: hack in mps_clock_t
(Should go via new Clock type in mpmtypes, mpsi_check(), etc).

Copied from Perforce
 Change: 166591
 ServerID: perforce.ravenbrook.com
2008-10-31 17:14:37 +00:00
Richard Kistruck
f5c3940658 Mps br/timing: (re-order file contents) arrange message functions
into a consistent order: 
 - internal (MPM) interface -- functions for message originator;
 - delivery (client) interface -- functions for recipient;
 - message methods.

Copied from Perforce
 Change: 166589
 ServerID: perforce.ravenbrook.com
2008-10-31 12:23:24 +00:00
Richard Kistruck
81a735e690 mps br/timing: back out broken message.c & mpsi.c
Copied from Perforce
 Change: 166586
 ServerID: perforce.ravenbrook.com
2008-10-31 10:16:57 +00:00
Richard Kistruck
0c1a9c3dc7 Mps br/timing: (broken) snapshot; i want to back these out and rearrange
functions into a consistent order first

Copied from Perforce
 Change: 166585
 ServerID: perforce.ravenbrook.com
2008-10-31 10:10:19 +00:00
Richard Kistruck
7cb185f2b2 Mps integrate gcgenmsg into master:
- new mps_message_type_gc_start() explains what triggered a collection;
  - design/message: add guide.

Copied from Perforce
 Change: 161204
 ServerID: perforce.ravenbrook.com
2006-12-12 09:56:09 +00:00
Richard Kistruck
02a7a9bc52 Mps gcgenmsg: 2006 copyrights
Copied from Perforce
 Change: 161202
 ServerID: perforce.ravenbrook.com
2006-12-12 08:47:10 +00:00
Richard Kistruck
62770e1f4a Mps _gc_start: make tracestartmessage reasons specific trigger names, not broad categories.
Make _why text more explanatory.

Copied from Perforce
 Change: 161196
 ServerID: perforce.ravenbrook.com
2006-12-11 16:17:31 +00:00
David Jones
cb0defd646 Mps: adjusting list of exported functions.
Copied from Perforce
 Change: 134028
 ServerID: perforce.ravenbrook.com
2004-12-16 16:58:49 +00:00
David Jones
35130274eb Mps: implementing remember / restore protection for real.
Copied from Perforce
 Change: 64140
 ServerID: perforce.ravenbrook.com
2003-11-13 17:07:13 +00:00
David Jones
e3210cc1b4 Mps: adding (null) interface to remember protection state.
Copied from Perforce
 Change: 63867
 ServerID: perforce.ravenbrook.com
2003-11-11 16:22:12 +00:00
David Jones
9e1db84c62 Mps: implementing mps_arena_expose
Copied from Perforce
 Change: 62949
 ServerID: perforce.ravenbrook.com
2003-11-04 12:34:54 +00:00
David Jones
05af441d05 Mps: can now call mps_arena_has_addr during
mps_arena_formatted_objects_walk.  test walkt0 is witness

Copied from Perforce
 Change: 50108
 ServerID: perforce.ravenbrook.com
2003-07-09 16:42:29 +01:00
David Jones
091cf2833d Mps: added mps_message_type_gc_start()
Copied from Perforce
 Change: 39781
 ServerID: perforce.ravenbrook.com
2003-02-19 16:34:08 +00:00
David Jones
da6044a59a Mps: added (untested) internals for messagetypegcstart
Copied from Perforce
 Change: 39768
 ServerID: perforce.ravenbrook.com
2003-02-19 13:27:16 +00:00
David Jones
944e84b5f2 Mps: minor style edits
Copied from Perforce
 Change: 39662
 ServerID: perforce.ravenbrook.com
2003-02-17 11:04:57 +00:00
Nick Barnes
ca4af46f1d Second cut at opportunism.
Copied from Perforce
 Change: 37580
 ServerID: perforce.ravenbrook.com
2003-01-03 14:22:35 +00:00