Richard Brooksby
40e6c06da3
Moving transforms design statements out of leader comment of trans.c, updating, clarifying, and cross-referencing, in response to review < https://github.com/ravenbrook/mps/pull/214#issuecomment-1590952221 >.
2023-06-16 09:14:14 +01:00
Richard Brooksby
6e268e53ff
Converting fixmes to comments containing what we have deduced about the test, and converting some to todos. linking issues to be resolved.
2023-06-16 07:43:57 +01:00
Jonathan Holburn
27cf30e15f
Add fixmes to ztfm.c testbench after walkthrough with rb
2023-06-15 11:14:22 +01:00
Richard Brooksby
351e34a2b4
Suppressing "may be used uninitialized" warning in rash build with gcc 11.3.0.
2023-06-14 09:13:09 +01:00
Richard Brooksby
051249011a
Avoid creating ambiguous references in stack slots that prevent the transform completing.
2023-06-12 15:05:58 +01:00
Richard Brooksby
a0e2e74c8b
Catch-up merge of master into branch/2023-04-13/transforms to resolve conflicts.
2023-06-12 14:51:06 +01:00
Richard Brooksby
db8c7da9a5
Fixing type puns found by gcc 11.3.0.
2023-06-12 14:35:11 +01:00
Gareth Rees
b10b842d75
Make transforms part of the public mps.
...
* Move transforms sources to the core sections of the makefiles.
* Move function declarations to the public header mps.h.
* Update copyright notices for transforms code.
* Remove references to Configura from the comments.
* Remove trailing whitespace.
* Translate design to reStructuredText.
* Move documentation to reference section of manual.
* Add warning about unsuitability when ambiguous references may exist.
(cherry picked from commit b1c30975d91a8ab871ca4d94de1754d5ee44ef03)
2023-06-12 14:19:17 +01:00
Richard Brooksby
ced601b71b
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
ed26ed17b9
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
325e25f036
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
Jonathan Holburn
ade77731c7
Correction to last commit
2023-05-23 02:20:51 +01:00
Jonathan Holburn
4bee04cc0e
Executing proc.review.edit
2023-05-23 02:15:02 +01:00
Jonathan Holburn
f95e3cbc05
Consistently use die() in extcon.c
2023-05-10 14:05:36 +01:00
Jonathan Holburn
d2ec9570d7
Add dylan test object to comm.gmk for extcon, missing from last commit
2023-05-10 13:57:26 +01:00
Jonathan Holburn
73b9fbd4cd
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
a97e2b2c9a
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
fbd0d0e082
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
a5a3fb7e94
Add output to aid cold end of stack debugging
2023-04-26 18:01:53 +01:00
Richard Brooksby
5fdb7072ef
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
29425d80d4
Removing unnecessary arena_park.
2023-04-14 15:32:37 +01:00
Richard Brooksby
e5015abe5f
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
0896712c51
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
4a5fe3fbc4
Detabifying extcon.c.
2023-04-14 10:52:08 +01:00
Richard Brooksby
f8e0026b40
Adding extcon extension/contraction test to posix builds. fixing warnings in extcon.c.
2023-04-14 10:46:56 +01:00
Jonathan Holburn
dcc7666a07
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
Richard Brooksby
b948191120
Part of making transforms part of the public mps.
...
(cherry picked from commit 6bd64a230a510bc19323da127d622a19bfd43f63)
2023-04-14 09:58:56 +01:00
Jonathan Holburn
970288d974
Add test for arena extend and contract callbacks
2023-04-13 12:25:15 +01:00
Richard Brooksby
e1590fc699
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
53d522b506
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
0538ddb984
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
0460bcf671
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
1aa18cdc00
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
f84241fa4f
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
1610d65d4c
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
39e2e60cd1
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
9f202d3521
Cleaning up fixmes. we no longer initialize protocol classes with static initializers.
2023-03-09 10:06:39 +00:00
Richard Brooksby
0d9d4bfaa1
Cleaning up fixmes. inststruct does not have a signature.
2023-03-09 09:59:16 +00:00
Richard Brooksby
787ea7d302
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
a1147b996d
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
6ac5dcb1f4
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
38cc6e4f8e
Documenting deprecation of getpagesize().
2023-03-04 07:56:29 +00:00
Bruce Mitchener
322dc834d9
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
892063a954
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
Richard Brooksby
f54fea1f9d
Clarifying todo in response to review < https://github.com/ravenbrook/mps/pull/119#discussion_r1115542531 >.
2023-02-24 09:07:28 +00:00
Richard Brooksby
eaa9e9cb22
Adding references to issues raised by review < https://github.com/ravenbrook/mps/pull/119#discussion_r1115543553 >.
2023-02-24 08:53:03 +00:00
Richard Brooksby
4f69099fa6
Suppressing unused variable warning for static that we only look at from a debugger.
2023-02-21 16:17:51 +00:00
Richard Brooksby
b331e68916
Wrapping preservedinplacecount in statistic macros to suppress dataflow warning from clang. see < https://github.com/ravenbrook/mps/issues/163#issuecomment-1438723301 >.
2023-02-21 16:09:04 +00:00
Richard Brooksby
c88e4e8a05
Downgrading old fixmes to todos with better explanation of tasks.
2023-02-20 08:51:15 +00:00
Bruce Mitchener
0f6e2f7a20
Fix typos.
2023-02-13 23:27:57 +07:00