Jeremiah Orians
09783ac089
Fixed continue behavior and added a test to verify correct behavior
2020-02-28 18:48:58 -05:00
Jeremiah Orians
6343e48600
Major relocation of tests to better structure for future additions
2020-02-28 18:27:12 -05: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
deesix
b2b1e13b03
aarch64: test27 links to the usual 0x400000 base address
2020-02-05 13:20:58 +01:00
Jeremiah Orians
aad1198faf
Revised tests to include dwarf stubs
2020-02-01 17:50:26 -05:00
Jeremiah Orians
1f709f3ff1
Merge branch 'master' of github.com:oriansj/M2-Planet
2020-02-01 17:23:20 -05:00
Jeremiah Orians
aa96bd22fa
Preparing for next release cycle
2020-02-01 17:22:38 -05:00
Jeremiah
f0b1f50c2c
Merge pull request #5 from fosslinux/chdir-tests
...
Add chdir family and getcwd family tests
2020-02-01 17:20:52 -05:00
fosslinux
831de6bc4a
Update kaem test to new kaem.c
2020-02-02 09:18:27 +11:00
fosslinux
510d4203ec
Add chdir family and getcwd family tests
2020-02-02 09:11:06 +11:00
Jeremiah Orians
71062011cd
Release 1.5.0
2020-02-01 16:21:10 -05:00
Jeremiah Orians
24829bee3c
Merge remote-tracking branch 'deesix/aarch64'
2020-02-01 15:40:16 -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
deesix
7dc280a10d
aarch64: tests
2020-02-01 21:23:49 +01:00
deesix
fa524bdce3
aarch64: libc
2020-02-01 21:23:49 +01:00
deesix
fbc2bf3333
aarch64: statement
2020-02-01 21:23:49 +01:00
deesix
803cf4ffa3
aarch64: flow control
2020-02-01 21:23:49 +01:00
deesix
ebb0e4a3f9
aarch64: expression
2020-02-01 21:23:49 +01:00
deesix
c32cb92daa
aarch64: arithmetic, relational and bitwise expressions
2020-02-01 21:23:49 +01:00
deesix
39936d81cb
aarch64: primary, postfix and unary expressions
2020-02-01 21:23:49 +01:00
deesix
b581244df0
aarch64: load of function, constant, global and variable
2020-02-01 21:23:49 +01:00
deesix
02bac66940
aarch64: function, function call, arguments, locals and return
2020-02-01 21:23:49 +01:00
deesix
0737a2acf0
aarch64: common recursion
2020-02-01 21:23:49 +01:00
deesix
74991dfe3f
aarch64: M1 definitions
2020-02-01 21:23:49 +01:00
deesix
0bded017b9
aarch64: recognize the new AArch64 target architecture
...
Now, aarch64 is valid for --architecture on the command-line. Accordingly,
the global variable Architecture is set to the new AARCH64 constant.
Manual page updated.
Register size is configured to 8 bytes.
2020-02-01 21:23:49 +01:00
deesix
086cb326b9
aarch64: ELF headers, adapted from the amd64 ones
2020-02-01 21:23:49 +01:00
Jeremiah Orians
095664e680
Fix knight-native to be able to support much larger binaries
2020-01-31 22:43:51 -05:00
Jeremiah Orians
4b2fce69b0
Adding support for hardware native and removed unneeded lines in .gitignore
2020-01-31 16:12:34 -05:00
Jeremiah Orians
5c4c6aee71
prevent void foo () { if(0) {} class of segfaults
2020-01-30 18:40:45 -05:00
Jeremiah Orians
308b201fd4
Fixed getcwd to better match
2020-01-28 04:24:29 -05:00
Jeremiah Orians
f77e0ed6cb
A quick prototype for getcwd
2020-01-25 16:24:12 -05:00
Jeremiah Orians
0709770730
Enabled forgotten cleanup scripts and add logic to catch ?alloc errors
2020-01-25 14:15:45 -05:00
Jeremiah Orians
4601fbe0e0
Add basic error catching to primitives and cc_strings.c
2020-01-25 11:35:28 -05:00
Jeremiah
de6eb338d5
Merge pull request #4 from deejoe/perfect-typo
...
correct a perfect typo in README.md
2020-01-24 16:16:33 -05:00
D. Joe
b543fe99c3
correct a perfect typo in README.md
2020-01-24 14:03:07 -05:00
Jeremiah Orians
4b2a048f14
Start reducing number of segfaults possible in M2-Planet
2020-01-22 18:03:28 -05:00
Jeremiah Orians
923784c797
Starting to restrict bad input
2020-01-21 17:50:26 -05:00
Jeremiah Orians
6341302101
Updated CHANGELOG.org with latest work
2020-01-18 11:01:52 -05:00
Jeremiah Orians
7b86089f95
Add support for access, chdir and fchdir in knight-posix (needs testing)
2020-01-18 10:14:51 -05:00
Jeremiah Orians
aeafd837e7
Adding first draft versions of chdir and access to M2-Planet (needs testing)
2020-01-18 08:57:32 -05:00
Jeremiah Orians
1221a5e6dc
Replace NOP with NULL because that is what is really ment by it
2020-01-06 20:21:26 -05:00
Jeremiah Orians
375fa888d0
added support for nested structs thanks to fosslinux
2019-12-23 06:39:45 -05:00
Jeremiah Orians
a10d822cff
fix segfault found thanks to fosslinux
2019-12-18 19:43:28 -05:00
Jeremiah Orians
20324767c7
Added baseline manpage (needs lots of love)
2019-12-05 19:38:50 -05:00
Jeremiah Orians
64a3a1b674
Get division on x86/AMD64 a closer approximation of what is correct
2019-11-29 12:55:55 -05:00
Jan Nieuwenhuizen
30a09a592b
build: Add dist target.
...
* makefile (dist): Create reproducible tarball.
2019-11-17 11:41:07 +01:00
Jan Nieuwenhuizen
b87ddb0051
[PATCH] numerate_number: Support lower case hex.
2019-11-07 22:57:53 -05:00
Jeremiah Orians
1fc2aeab48
Removed unneeded chars as toupper eliminates them as possibilities
2019-11-02 08:35:54 -04:00
Jeremiah
9b7c5c025f
Merge pull request #2 from stikonas/master
...
Fix a typo in a comment.
2019-11-01 18:24:25 -04:00
Jeremiah Orians
9eb0a8706e
Fixed amd64's xchg behavior, removed fixup_int32 and updated Changelog
2019-10-31 20:54:43 -04:00