Commit Graph

91 Commits

Author SHA1 Message Date
Jeremiah Orians c9b9920986
Release_1.10.0 2022-05-01 14:24:47 -04:00
Jeremiah Orians ae9e700592
Release_1.9.0 2021-10-03 09:34:22 -04:00
Jeremiah Orians 51dfec1791
Fixed Global buffer overflow in collect_weird_string thanks to Melg8 2021-06-23 18:57:56 -04:00
Jeremiah Orians a3c14bcd1b
Fixed Memory leak, thanks melg8 2021-06-23 07:58:11 -04:00
Jeremiah Orians 8bc09f2b2e
Fixed hang on large global arrays. Thanks melg8 2021-06-23 07:32:40 -04:00
Jeremiah Orians a925f90c3b
Preparing for next release cycle 2021-06-08 23:10:22 -04:00
Jeremiah Orians 0c1c22bc2f
Release_1.8.0 2021-06-08 23:05:36 -04:00
Jeremiah Orians e3ca15c731
Preparing for next release 2020-11-15 20:46:26 -05:00
Jeremiah Orians a5bc08b23f
Release 1.7.0 2020-11-15 20:43:58 -05:00
Jeremiah Orians 87672ddfdb
Release 1.6.0 2020-04-30 22:35:22 -04:00
deesix 205c383c5f lib: fflush stub
Paraphrasing OriansJ's IRC message while working on kaem:

GCC needs fflush(stdout) to get matching behavior, as M2-Planet doesn't
buffer. I guess we will need to make a fflush function (it'll do nothing
but return 0).
2020-03-01 18:55:32 +01:00
deesix b2ece54864 aarch64: do not generate a wasteful stack anymore
Until now, each element on the compiled program stack was 128 bits long,
half of them unused because only one 64 bits value was stored.

Now it's 64 bits long, so we don't waste all that memory.

We workaround the architectural alignment restriction of the SP register by
using a free regular register. X18 is for platform use so it seems a good
candidate for this task.

At _start we copy the value of SP into X18. SP is not used anymore. When a
definition refers to SP it doesn't mean it literaly now, because here we
redefine (without renaming) the involved M1 macro definitions to operate
on X18 (easier transition; abstraction). INIT_SP is introduced.

The function arguments are passed via stack, so the offset from the Base
Pointer ("depth") to each of them is different now. Changes both to
compiler code (cc_core.c) and libc reflect that the arguments are 8 bytes
(instead of 16 bytes) apart now. Note that SUB_X0_32 and SUB_X0_48 are
removed, because we only need 8, 16 and 24 bytes subtraction to reach the
arguments from asm libc functions. SUB_X0_8 and SUB_X0_24 are introduced.
2020-02-08 00:16:54 +01:00
Jeremiah Orians aad1198faf
Revised tests to include dwarf stubs 2020-02-01 17:50:26 -05:00
Jeremiah Orians aa96bd22fa
Preparing for next release cycle 2020-02-01 17:22:38 -05:00
Jeremiah Orians 71062011cd
Release 1.5.0 2020-02-01 16:21:10 -05:00
deesix 4db378437e aarch64: doc and thanks :)
Thanks to Hagfish for proofreading this documentation.

My deepest thanks to Jeremiah Orians for supporting me during the
development of this patch series. Your wisdom and patience is greatly
appreciated.

Thanks to the rest of the #bootstrappable family.

All errors left are mine.
2020-02-01 21:23:49 +01:00
Jeremiah Orians 6341302101
Updated CHANGELOG.org with latest work 2020-01-18 11:01:52 -05:00
Jeremiah Orians 1fc2aeab48
Removed unneeded chars as toupper eliminates them as possibilities 2019-11-02 08:35:54 -04:00
Jeremiah Orians 9eb0a8706e
Fixed amd64's xchg behavior, removed fixup_int32 and updated Changelog 2019-10-31 20:54:43 -04:00
Jeremiah Orians 7cab825b50
Release 1.4.0 2019-06-23 17:52:38 -04:00
Jeremiah Orians 465b4c9c31
Fixup behavior on 64bit platforms 2019-06-19 21:43:34 -04:00
Jeremiah Orians f43aa4a44c
Minor tweaks to better match amd64 assembly 2019-06-03 21:01:14 -04:00
Jeremiah Orians d5937fa5f1
Preparing for next release cycle 2019-04-22 19:33:29 -04:00
Jeremiah Orians 27cf071ee9
Release_1.3.0 2019-04-22 19:30:08 -04:00
deesix 00df8e2158 Verify compiled programs (kaem and Slow_Lisp) of test25 and test26 runs 2019-04-21 19:22:41 +02:00
Jeremiah Orians e55dc78597
4/24 working tests for AMD64 2019-04-19 17:43:59 -04:00
Jeremiah Orians 9d13edc4bc
Updated changelog after pull 2019-04-18 19:01:03 -04:00
Jeremiah Orians 420f8b62b9
1/24 working tests for AMD64 Port 2019-04-17 20:19:17 -04:00
Jeremiah Orians 0889a1d340
Preparing for next release cycle 2019-04-14 10:28:24 -04:00
Jeremiah Orians 99f2881546
Release_1.2.0 2019-04-14 10:24:13 -04:00
Jeremiah Orians 5384977d5a
23/24 working tests for armv7l 2019-04-14 08:49:11 -04:00
Jeremiah Orians 119226d569
Fixed ARMV7l stack behavior thanks to dddddd 2019-04-13 08:31:39 -04:00
Jeremiah Orians dc82e76d0d
Resolved non-standard behavior across locales thanks to dddddd 2019-04-07 17:11:18 -04:00
Jeremiah Orians 442601197c
17/24 working tests for armv7l 2019-03-30 09:25:52 -04:00
Jeremiah Orians c3ad31d66a
15/24 working tests for armv7l 2019-03-23 18:29:19 -04:00
Jeremiah Orians 87b1daaaa9
13/24 working tests for armv7l 2019-03-17 22:34:26 -04:00
Jeremiah Orians 95107d9fb6
10/24 working tests for armv7l 2019-03-17 10:08:56 -04:00
Jeremiah Orians fe95136b49
8/24 working tests for ARMv7l 2019-03-17 06:15:20 -04:00
Jeremiah Orians b61144efd7
6/24 working tests for ARMv7l 2019-03-16 23:27:52 -04:00
Jeremiah Orians eb034f51e8
5/24 working tests for ARMv7l 2019-03-16 20:03:56 -04:00
Jeremiah Orians f357464727
4/24 working tests for ARMv7l 2019-03-10 13:07:19 -04:00
Jeremiah Orians 740f376828
Test02 for ARMv7l 2019-03-10 11:24:13 -04:00
Jeremiah Orians 8f247d9716
Added second working test for ARMv7l 2019-03-10 09:33:45 -04:00
Jeremiah Orians d1036c60c8
First working test for ARMv7l 2019-03-09 20:22:29 -05:00
Jeremiah Orians d5d64bb254
knight-posix is now fully supported 2019-03-09 15:25:29 -05:00
Jeremiah Orians f01f805803
Upgraded to 23/24 working tests 2019-03-09 11:56:16 -05:00
Jeremiah Orians 01658364e5
Upgraded to 16/24 working tests 2019-02-28 20:52:01 -05:00
Jeremiah Orians 577f19dea9
Upgraded to 14/24 working tests 2019-02-26 18:04:49 -05:00
Jeremiah Orians d3965e811f
Incorporated 2 more working tests for knight-posix 2019-02-24 20:53:45 -05:00
Jeremiah Orians 69c319ef6c
Added working HEAP to knight-posix 2019-02-24 17:46:05 -05:00