1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
Commit graph

40 commits

Author SHA1 Message Date
Gareth Rees
ae39473509 Rename align_up and align macros in the scheme example as align_word and align_obj respectively.
Copied from Perforce
 Change: 183392
 ServerID: perforce.ravenbrook.com
2013-09-05 08:15:56 +01:00
Gareth Rees
514d0bea39 Improvements to clarity of weak hash table implementation:
* TAG_SIZE was changed to TAG_COUNT in the code, so make the corresponding change in the manual.
* Avoid the "+= 2" hack: use TAG_COUNT(UNTAG_COUNT(...) + 1). Clarity is more important than speed here.
* Use obj_unused for unused hash table entries so that there can be no confusion between NULL meaning "unused" and NULL meaning "splatted by the garbage collector".
* Add references from the example code to the notes.

Copied from Perforce
 Change: 182804
 ServerID: perforce.ravenbrook.com
2013-06-19 12:59:49 +01:00
Richard Brooksby
bb81f593cc Additional merges accidentally left out of changelist 182578. oops.
Copied from Perforce
 Change: 182580
 ServerID: perforce.ravenbrook.com
2013-06-06 15:11:45 +01:00
Richard Brooksby
e181376dd0 Merging branch/2013-05-01/keyword-arguments to pick up keyword arguments for object formats.
Copied from Perforce
 Change: 182562
 ServerID: perforce.ravenbrook.com
2013-06-06 12:55:04 +01:00
Gareth Rees
a8d6ecdbac Suppress "variable may be used uninitialized" warnings.
Copied from Perforce
 Change: 182545
 ServerID: perforce.ravenbrook.com
2013-06-05 16:44:35 +01:00
Gareth Rees
fa63d63b23 New public function mps_fmt_create_k creates an object format using the keyword argument interface.
Deprecate the format variant structures (mps_fmt_A_s, mps_fmt_B_s, mps_fmt_auto_header_s, mps_fmt_fixed_s) and the old interface (mps_fmt_create_A, mps_fmt_create_B, mps_fmt_create_auto_header, mps_fmt_create_fixed).

Copied from Perforce
 Change: 182277
 ServerID: perforce.ravenbrook.com
2013-05-28 16:10:08 +01:00
Gareth Rees
2ba7c5e08f Document the way to safely destroy automatically managed pools.
Copied from Perforce
 Change: 182166
 ServerID: perforce.ravenbrook.com
2013-05-24 16:17:51 +01:00
Gareth Rees
9e9c0e3990 Remove mps_arg from mps.h.
Use MPS_ARGS_BEGIN etc in the Scheme example and in the manual.
Use MPS_BEGIN and MPS_END instead of BEGIN and END.
The _FIELD macros don't need to be function-like macros.
Restore TODO comments in mps.h.
Scheme example compiles with -std=c89.

Copied from Perforce
 Change: 181749
 ServerID: perforce.ravenbrook.com
2013-05-13 21:01:38 +01:00
Gareth Rees
10c13b2a54 New macro mps_arg and revised macro mps_args_add mean that client programs no longer need to know which keyword argument goes in which field. revise documentation accordingly.
Copied from Perforce
 Change: 181736
 ServerID: perforce.ravenbrook.com
2013-05-12 17:21:03 +01:00
Gareth Rees
65583bfe92 Use keyword argument interface in scheme-advanced.c.
Copied from Perforce
 Change: 181726
 ServerID: perforce.ravenbrook.com
2013-05-11 19:36:20 +01:00
Gareth Rees
72885799c1 Integrate change 181724 (keyword arguments) from scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 181725
 ServerID: perforce.ravenbrook.com
2013-05-11 19:29:29 +01:00
Gareth Rees
aeb32ad6f8 Integrate change 181452 from scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 181453
 ServerID: perforce.ravenbrook.com
2013-04-25 20:20:44 +01:00
Gareth Rees
d298d36a13 Integrate typo fix (change 181392) from scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 181393
 ServerID: perforce.ravenbrook.com
2013-04-15 14:09:23 +01:00
Gareth Rees
483d7b9c12 Integrate removal of $id$ from scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 181167
 ServerID: perforce.ravenbrook.com
2013-03-18 15:13:01 +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
056b38813d Fixing typos in comments.
Copied from Perforce
 Change: 180959
 ServerID: perforce.ravenbrook.com
2013-02-19 16:52:44 +00:00
Richard Brooksby
963bef16f7 Integrate documentation fix from scheme.c.
Copied from Perforce
 Change: 180915
 ServerID: perforce.ravenbrook.com
2013-02-05 16:22:41 +00:00
Gareth Rees
74d0524608 Add some casts so that visual studio c++ 2010 express does not complain about loss of data and signed/unsigned comparison.
Copied from Perforce
 Change: 180499
 ServerID: perforce.ravenbrook.com
2012-11-19 15:10:30 +00:00
Gareth Rees
1f803b4118 Integrate gcc compatibility fixes from scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 180476
 ServerID: perforce.ravenbrook.com
2012-11-15 11:40:09 +00:00
Gareth Rees
4b8601ff78 Use three generations and 32 mb of address space.
Copied from Perforce
 Change: 180467
 ServerID: perforce.ravenbrook.com
2012-11-14 14:12:12 +00:00
Gareth Rees
952700c3fa Document more of the entry points.
Copied from Perforce
 Change: 180444
 ServerID: perforce.ravenbrook.com
2012-11-11 20:42:56 +00:00
Gareth Rees
006af61ec3 Merge "do" implementation from scheme.c into scheme-advanced.c.
Copied from Perforce
 Change: 180443
 ServerID: perforce.ravenbrook.com
2012-11-11 19:41:01 +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
3c6b97d65a Integrate promise fix from scheme to scheme-advanced.
Copied from Perforce
 Change: 180416
 ServerID: perforce.ravenbrook.com
2012-11-08 15:20:57 +00:00
Gareth Rees
6cd3e4fda7 Integrate "apply" fix into scheme-advanced.c.
Copied from Perforce
 Change: 180409
 ServerID: perforce.ravenbrook.com
2012-11-08 14:01:10 +00:00
Gareth Rees
b6300a3af4 Avoid type pun.
Copied from Perforce
 Change: 180364
 ServerID: perforce.ravenbrook.com
2012-11-06 12:16:46 +00:00
Gareth Rees
1c937a1915 Integrate table_delete bugfix from scheme.c.
Copied from Perforce
 Change: 180355
 ServerID: perforce.ravenbrook.com
2012-11-05 23:57:21 +00:00
Gareth Rees
f16a8b3629 Merge improvements from scheme.c.
TAG_COUNT is a better name than TAG_LENGTH.
Handle splat correctly even if no dependent object.

Copied from Perforce
 Change: 180302
 ServerID: perforce.ravenbrook.com
2012-11-03 17:38:37 +00:00
Gareth Rees
7bde2ba145 Integrate quasiquote improvements from scheme.c.
Copied from Perforce
 Change: 180297
 ServerID: perforce.ravenbrook.com
2012-11-02 22:45:41 +00:00
Gareth Rees
2eb56323e1 Implement the global symbol table as a weak-value hash table from strings to symbols.
Copied from Perforce
 Change: 180294
 ServerID: perforce.ravenbrook.com
2012-11-02 21:23:12 +00:00
Gareth Rees
d4fbbdfb6d Merge scheme.c changes (load, eqv) into scheme-advanced.c.
Improve weak hash table interface.
Fix a couple of bugs in handling of dependent objects.

Copied from Perforce
 Change: 180289
 ServerID: perforce.ravenbrook.com
2012-11-02 17:34:49 +00:00
Gareth Rees
4922259f66 Integrate string=?, make-eqv-hashtable, and make-hashtable.
Copied from Perforce
 Change: 180283
 ServerID: perforce.ravenbrook.com
2012-11-02 15:54:41 +00:00
Gareth Rees
979961ecd7 Fix the dependent object.
Copied from Perforce
 Change: 180279
 ServerID: perforce.ravenbrook.com
2012-11-02 14:25:09 +00:00
Gareth Rees
90e19d01b9 Merge change from scheme.c (implementation apply).
Share generation chain between pools.
No need for leaf_fmt at the moment.

Copied from Perforce
 Change: 180275
 ServerID: perforce.ravenbrook.com
2012-11-02 13:40:08 +00:00
Gareth Rees
10b15a188c Integrate references to documentation.
Copied from Perforce
 Change: 180258
 ServerID: perforce.ravenbrook.com
2012-11-02 11:58:38 +00:00
Gareth Rees
ddb4cc823c Merge changes from scheme.c into scheme-advanced.c:
1. Deletion of keys in hash tables.
2. Forwarding of character objects on 64-bit platforms.
3. Fix to hash table probe sequence.
4. Comments in Scheme source.
5. Fix to define (implicit begin).
6. Extend equal? to vectors and strings.
7. Add references to R4RS documentation.
8. Implement list-tail, list-ref, open-output-file, close-input-port, close-output-port, write, write-string, newline, hashtable?, hashtable-size, hashtable-delete!, hashtable-contains?, hashtable-keys.
9. Fix bug (buckets might be scanned before dependent object is set).
10. Non-interactive mode.

Copied from Perforce
 Change: 180255
 ServerID: perforce.ravenbrook.com
2012-11-02 11:50:33 +00:00
Gareth Rees
a8a6b4ab5c Segregate leaf objects into an amcz pool.
Copied from Perforce
 Change: 180240
 ServerID: perforce.ravenbrook.com
2012-11-01 18:14:41 +00:00
Gareth Rees
8cdceed6da Try segregating leaf objects.
Copied from Perforce
 Change: 180209
 ServerID: perforce.ravenbrook.com
2012-10-31 22:52:39 +00:00
Gareth Rees
37c725f76b Weak hash tables in scheme-advanced.c.
Copied from Perforce
 Change: 180208
 ServerID: perforce.ravenbrook.com
2012-10-31 22:13:46 +00:00
Gareth Rees
38a47fdecd Branch scheme.c to scheme-advanced.c.
Copied from Perforce
 Change: 180204
 ServerID: perforce.ravenbrook.com
2012-10-31 19:10:58 +00:00