1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-15 07:41:09 -08:00
Commit graph

2912 commits

Author SHA1 Message Date
Jonathan Holburn
c537528a23 Reintroduce comments that went missing during the original work to port this functionality from configura's mps-preview 2023-06-15 11:51:17 +01:00
Richard Brooksby
5dfc6bf541 Catch up merge from master into branch/2023-05-16/interior-pointers 2023-06-15 09:28:49 +01:00
Richard Brooksby
fa9929fad6 Improving comments on amcaddrobject in response to review <https://github.com/ravenbrook/mps/pull/223#pullrequestreview-1432893665>. 2023-06-15 09:21:55 +01:00
Richard Brooksby
6dde90d0e8 Removing redundant user documentation in response to review <https://github.com/ravenbrook/mps/pull/223/files#r1197946092> 2023-06-15 09:01:16 +01:00
Jonathan Holburn
4d077e8885 Make various edits from required after proc.review 2023-06-12 23:40:10 +01:00
Richard Brooksby
5b3280526f Clarifying comments in response to review <https://github.com/ravenbrook/mps/pull/213#discussion_r1191144878> 2023-06-09 14:49:32 +01:00
Richard Brooksby
5cfa8a6106 Improving comments in response to review <https://github.com/ravenbrook/mps/pull/213#pullrequestreview-1422468433>. 2023-06-09 14:43:41 +01:00
Richard Brooksby
7ff254469a Adding arena contraction callback to all chunk deallocations, so that it is called when the arena is destroyed. 2023-06-09 14:29:55 +01:00
Richard Brooksby
b4205f0ddd Adding addrobj test case to xcode project and enabling it as part of testci target on all platforms. 2023-06-07 16:12:36 +01:00
Richard Brooksby
bef248f012 Generalising mps_addr_object, arenaaddrobject, pooladdrobject for pools that do not use segments. 2023-06-07 14:57:55 +01:00
Jonathan Holburn
74020f4390 Correction to last commit 2023-05-23 02:20:51 +01:00
Jonathan Holburn
7b395f057b Executing proc.review.edit 2023-05-23 02:15:02 +01:00
Jonathan Holburn
7835ac66e9 Reorganise comments for readability in addrobj.c 2023-05-17 21:51:12 +01:00
Jonathan Holburn
b028ba37df Avoid type punning while using dylan test utilities 2023-05-17 21:30:07 +01:00
Jonathan Holburn
6c79248c66 Correct spelling of target 2023-05-17 20:52:31 +01:00
Jonathan Holburn
52c94e7c47 Correct capitalisation on target name 2023-05-17 20:48:33 +01:00
Jonathan Holburn
382445a9d6 Add addrobj.c to the testcases 2023-05-17 20:39:58 +01:00
Jonathan Holburn
00f1f156d1 Add addrobj.c testbench to test mps_addr_object() 2023-05-17 18:37:20 +01:00
Jonathan Holburn
a5c4bd4eb4 Checkl of addrobject method should not be commented out 2023-05-16 17:57:19 +01:00
Jonathan Holburn
7caefe081a Add implementation of mps_addr_object as implemented by jph on top of branch cet-merge-2 and subsequently became mps-2022. directly fix some whitespace according to c syntax conventions and remove boolean operation on a pointer 2023-05-16 17:26:00 +01:00
Jonathan Holburn
60c01c2451 Consistently use die() in extcon.c 2023-05-10 14:05:36 +01:00
Jonathan Holburn
e5f0cdbc2c Add dylan test object to comm.gmk for extcon, missing from last commit 2023-05-10 13:57:26 +01:00
Jonathan Holburn
236a039ec7 Remove homebrew format from extcon testbench and replace with dylan fmt. also disable code relating to stack roots. also replaces deprecated root_table. add comments 2023-05-10 13:51:39 +01:00
Richard Brooksby
139c99181d Disabling the insist comparing the testobj array to the cold end of the stack, since the testobj array is now a static and not comparible. 2023-05-02 16:02:48 +01:00
Richard Brooksby
c1d3717e0a Moving the root of objects into a static to avoid problems with the cold end of the stack for now, deferring solution of github issue <https://github.com/ravenbrook/mps/issues/210>. convertin asserts to insists so that they are present in hot builds.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/210
2023-05-02 15:40:26 +01:00
Jonathan Holburn
1ef514c729 Add output to aid cold end of stack debugging 2023-04-26 18:01:53 +01:00
Richard Brooksby
273f4aeb02 Adding detailed output to extcon about memory reservation and gc cycles, to try to diagnose intermittent failures in ci. 2023-04-14 17:33:16 +01:00
Richard Brooksby
4e59883e96 Removing unnecessary arena_park. 2023-04-14 15:32:37 +01:00
Richard Brooksby
38eb470a7b Adding an attribute to test_main to prevent clang 14 from inlining it an reordering locals, causing stack roots to become lost. working around github issue <https://github.com/ravenbrook/mps/issues/210>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/210
2023-04-14 15:32:10 +01:00
Richard Brooksby
f6214ab9ae Adding an assertion that forces gcc not to reorder locals, working around github issue <https://github.com/ravenbrook/mps/issues/210>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/210
2023-04-14 15:08:27 +01:00
Richard Brooksby
612c2e8e62 Detabifying extcon.c. 2023-04-14 10:52:08 +01:00
Richard Brooksby
37f89e794e Adding extcon extension/contraction test to posix builds. fixing warnings in extcon.c. 2023-04-14 10:46:56 +01:00
Jonathan Holburn
551df8b2c6 Fix test to ensure that cold pointer exists in colder stack frame.
This avoids the issue https://github.com/Ravenbrook/mps/issues/210

Also increase the number of test objects by *10 to make it more likely
the arena will decide to contract.

Also comment out some printfs in the interrupt context, to avoid messy
output.

Also fix some typos in comments
2023-04-14 10:10:18 +01:00
Jonathan Holburn
6ee0abfb54 Add test for arena extend and contract callbacks 2023-04-13 12:25:15 +01:00
Richard Brooksby
bf20351ddb Part of making extension callbacks part of the public mps.
* Move type and macro declarations to the public header mps.h.
* Move documentation to appropriate sections of manual.

(cherry picked from commit b928fa236178fb1bdbe20442c3f53b8e8a545a4b)
2023-04-13 10:07:58 +01:00
Richard Brooksby
e3accea56d Merging branch/2023-03-04/getpagesize-vs-sysconf for github pull request <https://github.com/ravenbrook/mps/pull/188>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/188
2023-03-23 22:17:37 +00:00
Richard Brooksby
ea36a51f82 Merging branch/2023-02-27/correct-file-names for github pull request <https://github.com/ravenbrook/mps/pull/179>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/179
2023-03-23 22:09:32 +00:00
Richard Brooksby
ec75fdc86d Minor documentation improvements in response to review <https://github.com/ravenbrook/mps/pull/179#pullrequestreview-1354912126>. 2023-03-23 15:44:06 +00:00
Richard Brooksby
601976ff80 Merging branch/2023-03-09/sig-design-tidy for github pull request <https://github.com/ravenbrook/mps/pull/193>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/193
2023-03-13 20:17:31 +00:00
Richard Brooksby
c709188183 Merging branch/2023-02-21/termux-build for github pull request <https://github.com/ravenbrook/mps/pull/164>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/164
2023-03-09 11:53:39 +00:00
Richard Brooksby
9875ff7b9e Explaining the purpose of the calls variable in response to <https://github.com/ravenbrook/mps/pull/164#discussion_r1130845346>. 2023-03-09 11:33:14 +00:00
Richard Brooksby
ef69911fdd Cleaning up fixmes. moving signature on abqstruct to the start, since i couldn't find any justification for it to be at the end. it was always at the end. 2023-03-09 10:11:12 +00:00
Richard Brooksby
7482cf4f67 Cleaning up fixmes. we no longer initialize protocol classes with static initializers. 2023-03-09 10:06:39 +00:00
Richard Brooksby
3f0496d325 Cleaning up fixmes. inststruct does not have a signature. 2023-03-09 09:59:16 +00:00
Richard Brooksby
9fda23f4c6 Moving design documentation of signatures to design.mps.sig and updating tagging from code to be consistent. 2023-03-09 09:40:03 +00:00
Richard Brooksby
cc1731dcd0 Merging branch/2023-02-13/fix-typos for github pull request <https://github.com/ravenbrook/mps/pull/149>.
GitHub-reference: https://github.com/Ravenbrook/mps/issues/149
2023-03-08 11:10:53 +00:00
Richard Brooksby
d92239c2ab Declaring variable as static volatile to ensure clean communication with debugger and suppress warnings. this is a better expression of intention. 2023-03-08 11:03:27 +00:00
Richard Brooksby
93e50e49d5 Documenting deprecation of getpagesize(). 2023-03-04 07:56:29 +00:00
Bruce Mitchener
c261059da2 Unix: use sysconf(_sc_pagesize), not getpagesize()
The `getpagesize()` is a legacy function and is not available
in the default configurations on some platforms.

The documentation for `getpagesize()` recommends using the POSIX
`sysconf(_SC_PAGESIZE)` instead.

Additionally, `sysconf(_SC_PAGESIZE)` returns a `long` rather than
an `int`, so the code is updated to handle that as well.

Sources:

* https://man7.org/linux/man-pages/man2/getpagesize.2.html
* https://pubs.opengroup.org/onlinepubs/7908799/xsh/getpagesize.html
2023-03-04 14:11:09 +07:00
Bruce Mitchener
29cd6336df Correct file name references.
The checks that these files are being used on the right platform
contain the wrong file names.
2023-02-27 10:19:55 +07:00