Commit graph

695 commits

Author SHA1 Message Date
Egor Sheremetov
87d018877b Attempt to determine section boundaries at a compile-time 2024-07-11 15:19:22 +02:00
Egor Sheremetov
d6a2fadda1 Removed plt 2024-07-11 15:19:22 +02:00
Egor Sheremetov
46131cde74 Fixed cross-compilation flag for x86-64 macOS compilation 2024-07-11 15:19:22 +02:00
Egor Sheremetov
e74e08fa4f Changed cross-compilation flag for x86-64 macOS compilation 2024-07-11 15:19:22 +02:00
Egor Sheremetov
10dc4d6a02 Added cross-compilation flag for x86-64 macOS compilation 2024-07-11 15:19:22 +02:00
Egor Sheremetov
f4504de0ca Added flag for compilation for macOS 2024-07-11 15:19:22 +02:00
Egor Sheremetov
19116f0821 Fixed symbol names in a couple of places in printf.s 2024-07-11 15:19:22 +02:00
Egor Sheremetov
e6f4e06973 Fixed generated symbols' names used for macOS 2024-07-11 15:19:22 +02:00
Egor Sheremetov
ced766734c Added call to functions through PLT 2024-07-11 15:19:22 +02:00
Egor Sheremetov
53d7bc42d1 Changed gen_line method 2024-07-11 15:19:22 +02:00
Egor Sheremetov
05983251c1 Removed debug symbols and fixed .section directive to be appropriate for mach-o 2024-07-11 15:19:22 +02:00
Egor Sheremetov
234c76963b Fixed in asm 2024-07-11 15:19:22 +02:00
Egor Sheremetov
3b54121ca8 fixed local symbols issue for mac 2024-07-11 15:19:22 +02:00
Egor Sheremetov
02d00572d6 Changed regex functions to the ones that comply with POSIX 2024-07-11 15:19:22 +02:00
Egor Sheremetov
7cf72986e8 Naive fix for mremap, without virtual space reservation 2024-07-11 15:19:22 +02:00
Roman Venediktov
8df129b518 Prototype pie executable 2024-07-11 15:19:22 +02:00
Roman Venediktov
9fa02845cb Prohibit user functions with built-in names 2024-07-11 15:19:22 +02:00
Roman Venediktov
907a9f4f93 Disable tail call for vararg functions 2024-07-11 15:19:22 +02:00
Egor Sheremetov
a174d13c22 Fixed runtime/GC-related issues 2024-07-11 15:19:22 +02:00
Egor Sheremetov
05e4c15fe2 Added conditional debug output for GC related operations 2024-07-11 15:19:22 +02:00
Roman Venediktov
bcc85384c3 Fix argc and argument order 2024-07-11 15:19:22 +02:00
Egor Sheremetov
c9ce273e2e Added support for array-like args instead of varargs 2024-07-11 15:19:22 +02:00
Egor Sheremetov
73edd5603d Debug prints added 2024-07-11 15:19:22 +02:00
Roman Venediktov
c4ffeb2fbf Added built-in labels parametrization 2024-07-11 15:19:22 +02:00
Roman Venediktov
de2c516935 Added label parametrization 2024-07-11 15:19:22 +02:00
Roman Venediktov
618dbdfc0f Implement safepoint call 2024-07-11 15:19:22 +02:00
danyaberezun
903164568c mac: last attempt 2024-07-11 15:19:22 +02:00
danyaberezun
87339c7b73 add flag -Wno-error=implicit-function-declaration 2024-07-11 15:19:22 +02:00
danyaberezun
43f5760a7e add std flag to clang 2024-07-11 15:19:22 +02:00
danyaberezun
1aefb02da7 runtime: change gcc to clang 2024-07-11 15:19:22 +02:00
danyaberezun
62c8df3012 add include regex h 2024-07-11 15:19:22 +02:00
Roman Venediktov
a4ac6f9e6a Comment out mremap 2024-07-11 15:19:22 +02:00
Roman Venediktov
786dd9567b Fix workflow 2024-07-11 15:19:22 +02:00
Roman Venediktov
db296f5259 Final commit 2024-07-11 15:19:22 +02:00
danyaberezun
b532e90ea0 add build and rutime rebuild 2024-07-11 15:19:22 +02:00
Roman Venediktov
db9067b748 Fix all prints 2024-07-11 15:19:22 +02:00
Roman Venediktov
a91f61dbfa Finish fixing big numbers 2024-07-11 15:19:22 +02:00
Roman Venediktov
aeb4675210 Fix big numeric literal movement 2024-07-11 15:19:22 +02:00
danyaberezun
3805a0896b disable a pair of test (not an expected result but seems to be okay) 2024-07-11 15:19:22 +02:00
danyaberezun
e8196e4c27 add a extra argument got Lprintf and disable tail call optimization for it 2024-07-11 15:19:22 +02:00
danyaberezun
d76d2a02ea implement Lprintf in asm; fix int to aint in runtime 2024-07-11 15:19:22 +02:00
Egor Sheremetov
e0189d5654 Added asm wrapper for printf 2024-07-11 15:19:22 +02:00
Egor Sheremetov
f6516bae63 Added stack alignment check, fixed Makefile to build target in x86-64 mode 2024-07-11 15:19:22 +02:00
Roman Venediktov
2dadccc71f Align only main function 2024-07-11 15:19:22 +02:00
Roman Venediktov
3ae187683a Remove vararg processing & align stack 2024-07-11 15:19:22 +02:00
Roman Venediktov
0aea081841 Fix type 2024-07-11 15:19:22 +02:00
Roman Venediktov
f83cf7880c Warn on vararg closure & change hash size 2024-07-11 15:19:22 +02:00
Roman Venediktov
829eb3beab Refactor compile_call & return tail_call 2024-07-11 15:19:22 +02:00
Egor Sheremetov
6359a1731c Added X64_64 support for the x86-64 platform 2024-07-11 15:19:22 +02:00
Roman Venediktov
c89cc167ef New bunch of fixes 2024-07-11 15:19:22 +02:00