1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-27 09:11:48 -07:00
Commit graph

75 commits

Author SHA1 Message Date
Richard Brooksby
8a9d451ff8 Catch-up merge from custom/cet/main to master.
Includes installable assertion handler, events in circular memory buffers, LARGEADDRESSAWARE, etc.

Copied from Perforce
 Change: 182176
 ServerID: perforce.ravenbrook.com
2013-05-24 19:42:46 +01:00
Gareth Rees
61743c36b4 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
60f7df4335 Adjusting the default extend_by of the mv pool to be more sensible and match the other pools, but overriding it in the case of the arena control pool, where the default originated.
Copied from Perforce
 Change: 181946
 ServerID: perforce.ravenbrook.com
2013-05-19 20:01:52 +01:00
Richard Brooksby
e8eb1a1462 Fixing the mvff documentation to say that the keyword arguments are optional, and documenting their default values.
Attaching the note about some keywords not affecting allocation points to those keywords with a footnote reference.
Fixing the default alignment setting to MVFF pool to MPS_PF_ALIGN.

Copied from Perforce
 Change: 181874
 ServerID: perforce.ravenbrook.com
2013-05-16 18:12:54 +01:00
Richard Brooksby
8b430778b6 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
0206eb695b 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
e67939cabb 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
fcef8c8a63 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
a8afd8e6f4 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
714bf2aff2 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
f53a5e569d Configuring awl pool to give give up and scan an entire segment after 200 single access hits, after observing open dylan bootstrap on ubuntu 12 hammering the table and making no progress.
AWL pool no longer tries a single access if the trace band has reached rank WEAK, since it doesn't need to.

Copied from Perforce
 Change: 179434
 ServerID: perforce.ravenbrook.com
2012-09-11 21:21:26 +01:00
Richard Brooksby
b82e27dfa6 Merging recent review changes from variety-reform branch.
Copied from Perforce
 Change: 179306
 ServerID: perforce.ravenbrook.com
2012-09-06 16:59:31 +01:00
Richard Brooksby
6b417b80d3 Responding to nb's review of variety-reform.
https://info.ravenbrook.com/mail/2012/09/06/15-42-57/0/

Copied from Perforce
 Change: 179302
 ServerID: perforce.ravenbrook.com
2012-09-06 16:47:44 +01:00
Richard Brooksby
e6e620f76c 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
b6043c7a01 Making hot the default variety, so that "cc -c mps.c" comes out hot.
Copied from Perforce
 Change: 179287
 ServerID: perforce.ravenbrook.com
2012-09-05 23:04:12 +01:00
Richard Brooksby
aede28b20f Downgrading recommended optimisation from -o3 to -o2.
DL is uneasy that we're safe against aliasing problems.  Will look more carefully later.

Copied from Perforce
 Change: 179282
 ServerID: perforce.ravenbrook.com
2012-09-05 19:04:04 +01:00
Richard Brooksby
1d42c13c25 Merging branch/2012-08-15/variety-reform.
Copied from Perforce
 Change: 179279
 ServerID: perforce.ravenbrook.com
2012-09-05 18:44:44 +01:00
Richard Brooksby
81104ff2ff Providing config_plinth_none so that open dylan can build using mps.c without depending on the c library.
Copied from Perforce
 Change: 179248
 ServerID: perforce.ravenbrook.com
2012-09-05 09:45:24 +01:00
Richard Brooksby
58b1829c39 Resolving fixmes.
Correcting untruths in <design/config>.

Copied from Perforce
 Change: 179200
 ServerID: perforce.ravenbrook.com
2012-09-03 14:46:09 +01:00
Richard Brooksby
52dab6de7e Renaming varieties we to rash and di to diag. leaving ti alone as it will be deleted shortly in merge with diagnostic-telemetry branch.
Copied from Perforce
 Change: 179193
 ServerID: perforce.ravenbrook.com
2012-09-03 13:32:11 +01:00
Richard Brooksby
003ea87973 Renaming "he" variety to "hot" and "ci" variety to "cool". like the old days.
Copied from Perforce
 Change: 179170
 ServerID: perforce.ravenbrook.com
2012-09-02 11:04:53 +01:00
Richard Brooksby
0070b005a1 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
01c0cf7acb Compiling with a static checking level by default, doubling the speed of the cool variety.
Copied from Perforce
 Change: 179157
 ServerID: perforce.ravenbrook.com
2012-09-01 11:40:43 +01:00
Richard Brooksby
6bdffe4c12 Abolishing a bunch of varieties and reforming the hot variety to run about as fast as white-hot.
See <http://info.ravenbrook.com/mail/2012/08/15/17-43-37/0/>.

Copied from Perforce
 Change: 179153
 ServerID: perforce.ravenbrook.com
2012-09-01 00:01:03 +01:00
Richard Brooksby
28c9bb13f3 Cool varieties now log events on the critical path too, whereas hot varieties only log elsewhere.
Copied from Perforce
 Change: 179140
 ServerID: perforce.ravenbrook.com
2012-08-31 17:26:48 +01:00
Richard Brooksby
24eb124aa4 Now there is no measurable performance penalty for events, they're on in all varieties (except we).
Copied from Perforce
 Change: 179137
 ServerID: perforce.ravenbrook.com
2012-08-31 16:42:17 +01:00
Richard Brooksby
a327f0cd7e Expanded event parameters into separate macros annotated with parameter names, simplifying event definition macros.
Copied from Perforce
 Change: 179122
 ServerID: perforce.ravenbrook.com
2012-08-31 04:25:18 +01:00
Richard Brooksby
6ced7e36b8 Fixing further pedantic compilation issues on xci3gc.
Copied from Perforce
 Change: 179057
 ServerID: perforce.ravenbrook.com
2012-08-26 17:07:32 +01:00
Richard Brooksby
4311e93f88 Fixing compilation of event_clock on pedantic gcc, specifically xci3gc.
Copied from Perforce
 Change: 179056
 ServerID: perforce.ravenbrook.com
2012-08-26 16:44:17 +01:00
Richard Brooksby
424c9f9239 Removing references to obsolete platforms.
Copied from Perforce
 Change: 178909
 ServerID: perforce.ravenbrook.com
2012-08-12 23:29:49 +01:00
Richard Brooksby
0f4b6dc65d Removed support for old or dead platforms: osf/1, irix, mac system 7, sunos, windows nt on alpha, windows nt on powerpc.
See <https://github.com/datafueled/memory-pool-system/pull/3> for the origin of this change.

Copied from Perforce
 Change: 178872
 ServerID: perforce.ravenbrook.com
2012-08-08 19:02:57 +01:00
Richard Brooksby
58bd26ec77 Adding w3i3mv to mps.c, allowing simple builds. this now works:
cl /Feamcss.exe /DCONFIG_PROD_MPS /DCONFIG_VAR_CI amcss.c fmtdy.c fmtdytst.c fmtno.c mps.c testlib.c

Copied from Perforce
 Change: 178777
 ServerID: perforce.ravenbrook.com
2012-07-30 16:48:02 +01:00
Richard Brooksby
5b8faf430b Fixing signal handling for freebsd 7. freebsd now signals sigsegv with code segv_accerr for memory protection faults. updated config.h.
Copied from Perforce
 Change: 178775
 ServerID: perforce.ravenbrook.com
2012-07-30 14:39:40 +01:00
David Lovemore
0c22e4fb5a Fixed up long constants and shifts that needed to be cast to correct type.
Copied from Perforce
 Change: 178095
 ServerID: perforce.ravenbrook.com
2012-05-03 16:38:47 +01:00
Richard Kistruck
788aac4a8f mps br/timing traceanc: (tidying only) improve comments and variable
names.

Copied from Perforce
 Change: 166915
 ServerID: perforce.ravenbrook.com
2008-12-10 10:32:29 +00:00
Richard Kistruck
81186b3204 Mps br/diagtag: diag_prefix_ in config.h, instead of hard-wired.
Note .filter-disable.

Copied from Perforce
 Change: 163119
 ServerID: perforce.ravenbrook.com
2007-08-14 13:31:46 +01:00
Richard Kistruck
a5a265a391 Mps br/diagtag: determine diag_buffer_size in config.h; space for
20000 chars (10 screenfuls) in diag varieties, 1 char in others.
Handle diag->buf overflow (in fact was already handled; now tested; 
 in the always-on safety tests, use a condition that is verbatim 
 the same as the corresponding AVER).
Diag type: DiagSig, and AVERT(Diag, diag).  Neater .rules.debug.

Copied from Perforce
 Change: 163114
 ServerID: perforce.ravenbrook.com
2007-08-13 18:07:30 +01:00
Richard Kistruck
844b22f67c Mps master: diag_with_stream_and_writef.
trace.c: traceFindGrey_diag: wrap calls in DIAG(), prevent report
overflow, reduce report array to 20 chars, and use WriteF.

Copied from Perforce
 Change: 162937
 ServerID: perforce.ravenbrook.com
2007-07-19 14:38:57 +01:00
Richard Kistruck
7d5719014d Mps br/diag: config.h: translate config_debug to config_stats,
because that's what it means.  It's got nothing to do with debugging!
Note: this affects MPS_VARIETY_STRING, and version.c#MPSVersionString.

Copied from Perforce
 Change: 162693
 ServerID: perforce.ravenbrook.com
2007-06-29 14:26:50 +01:00
Richard Kistruck
b44832b7f6 Mps br/diag: rename #def "diagnostics" as "statistics", as all the
macros it controls are called "STATISTIC_blah", and same replacement 
in comments.  The term "diagnostic" means something else now: see 
design/diag/.

Copied from Perforce
 Change: 162692
 ServerID: perforce.ravenbrook.com
2007-06-29 14:08:00 +01:00
Richard Kistruck
dad98183fc Mps br/diag: back to diag_with_printf again.
Copied from Perforce
 Change: 162397
 ServerID: perforce.ravenbrook.com
2007-05-23 16:39:26 +01:00
Richard Kistruck
6c68e81099 Mps br/diag: release exp-162395:
Switch from DIAG_WITH_PRINTF to _WITH_STREAM_WRITEF.
(Still just from TraceStart).

Copied from Perforce
 Change: 162395
 ServerID: perforce.ravenbrook.com
2007-05-23 15:45:32 +01:00
Richard Kistruck
e3c37ff15e Mps br/diag: diag-out with writef and diag_stream does not work in cet.
Hope to fix in time, but for now I need DIAG-out to work, so switch 
to printf (yes, really, I know, sorry).
Also, only do DIAG-out in variety.di, to avoid damage to .ci.
So for now, remove DIAG_WRITEF and DIAG from arenavm and trace.
To test, add DIAG_PRINTF in trace.

Copied from Perforce
 Change: 162387
 ServerID: perforce.ravenbrook.com
2007-05-21 16:28:50 +01:00
Richard Kistruck
17f1066b27 Mps br/diag: new variety.di: hot+diagnostics
Copied from Perforce
 Change: 162222
 ServerID: perforce.ravenbrook.com
2007-04-27 16:46:51 +01:00
Richard Kistruck
b991aab81f Mps br/diag: backout change to variety.ii:
(was now has DIAGNOSTICS, and no logging;
now: back to CONFIG_LOG, and no diag)

Copied from Perforce
 Change: 162221
 ServerID: perforce.ravenbrook.com
2007-04-27 16:33:38 +01:00
Richard Kistruck
51ae6e346f Mps br/diag: variety.ii: now has diagnostics, and no logging (pro tem);
mpm.h: DIAG() et al under control of DIAGNOSTICS;
diag.c: under control of DIAGNOSTICS, plus add header and copyright.

Copied from Perforce
 Change: 162214
 ServerID: perforce.ravenbrook.com
2007-04-27 15:37:16 +01:00
David Jones
bfc14882e8 Mps: typo in config.h was breaking freebsd builds.
Copied from Perforce
 Change: 161905
 ServerID: perforce.ravenbrook.com
2007-03-09 09:35:31 +00:00
David Jones
d70be295ee Mps: protection for intel darwin. hopefully cross-platform.
Copied from Perforce
 Change: 161902
 ServerID: perforce.ravenbrook.com
2007-03-08 21:50:28 +00:00
Richard Kistruck
9e4a7b3f86 Mps make hot varieties do avers and checks, and *not* gather statistics.
job001545 & job001546

Copied from Perforce
 Change: 161213
 ServerID: perforce.ravenbrook.com
2006-12-13 16:01:46 +00:00
Richard Kistruck
2acc44ac10 Mps config.h: make it easy to see which variety turns on which features.
The logic is now clear, but wrong.  See job001545.
(Source-only change).

Copied from Perforce
 Change: 161211
 ServerID: perforce.ravenbrook.com
2006-12-13 15:41:53 +00:00