David
|
797b1f619a
|
Merge pull request #19 from birth-software/signed-division
implement signed division
|
2023-11-13 10:27:54 -06:00 |
|
David Gonzalez Martin
|
f96cf16a2a
|
implement signed division
|
2023-11-13 10:26:05 -06:00 |
|
David
|
8ab7a0d768
|
Merge pull request #18 from birth-software/imul-test
actually add imul test case
|
2023-11-12 20:45:12 -06:00 |
|
David Gonzalez Martin
|
4d1d5fa1c0
|
actually add imul test case
|
2023-11-12 20:35:26 -06:00 |
|
David
|
752fe9e115
|
Merge pull request #16 from birth-software/imul
implement signed multiplication
|
2023-11-12 20:09:09 -06:00 |
|
David Gonzalez Martin
|
d390ee08f6
|
implement signed multiplication
|
2023-11-12 20:06:12 -06:00 |
|
David
|
be6ea6c45d
|
Merge pull request #15 from birth-software/more-binary-operands
implement and, or, xor
|
2023-11-12 17:24:18 -06:00 |
|
David Gonzalez Martin
|
eb681dc7a1
|
implement and, or, xor
|
2023-11-12 17:21:45 -06:00 |
|
David
|
6f36f45ef7
|
Merge pull request #14 from birth-software/add-sub
implement add and sub
|
2023-11-12 11:12:50 -06:00 |
|
David Gonzalez Martin
|
35657715e9
|
implement add and sub
|
2023-11-12 11:11:06 -06:00 |
|
David
|
be143a8415
|
Merge pull request #13 from birth-software/fix-register-allocation
Fix register allocation for argument passing
|
2023-11-11 09:26:56 -06:00 |
|
David Gonzalez Martin
|
e75f3f3a68
|
Fix register allocation for call argument passing
|
2023-11-11 09:26:09 -06:00 |
|
David
|
9d6607b460
|
Merge pull request #12 from birth-software/hello-world
Hello world
|
2023-11-10 17:10:02 -06:00 |
|
David Gonzalez Martin
|
31185e6779
|
hello_world: finish producing a hello world exe
Section manager redesign
Linker relocations
Using global strings
String literal fixup in sema
|
2023-11-10 17:06:27 -06:00 |
|
David Gonzalez Martin
|
73769beb32
|
x86_64: some encodings
|
2023-11-10 12:38:14 -06:00 |
|
David Gonzalez Martin
|
9dc5f795b2
|
x86_64: implicit definition of RAX after syscall
|
2023-11-10 11:02:17 -06:00 |
|
David Gonzalez Martin
|
5dceac7720
|
ir: don't emit constants in function instructions
This aims to improve register allocation
|
2023-11-10 10:43:23 -06:00 |
|
David Gonzalez Martin
|
da07fd5ca4
|
implement lea for globals and argument tweaks
|
2023-11-10 10:42:30 -06:00 |
|
David
|
8755c32aff
|
Merge pull request #11 from birth-software/stack-test
add stack test
|
2023-11-09 23:41:38 -06:00 |
|
David Gonzalez Martin
|
46f4679cc7
|
add stack test
|
2023-11-09 23:40:47 -06:00 |
|
David
|
d025291290
|
Merge pull request #10 from birth-software/backend-improvement
Backend improvement
|
2023-11-09 23:34:01 -06:00 |
|
David Gonzalez Martin
|
aee9770f8b
|
Exclude other OS different than Linux in CI
|
2023-11-09 23:32:29 -06:00 |
|
David Gonzalez Martin
|
22243d296c
|
add encoding and elf linking
|
2023-11-09 23:20:34 -06:00 |
|
David Gonzalez Martin
|
30baa0b53d
|
Fix register allocator for barebones use
|
2023-11-08 22:26:22 -06:00 |
|
David Gonzalez Martin
|
b24bd8221e
|
Add custom logger
|
2023-11-08 09:27:45 -06:00 |
|
David Gonzalez Martin
|
aefabd6108
|
almost working register allocator
|
2023-11-07 15:00:48 -06:00 |
|
David Gonzalez Martin
|
77e54285f5
|
instruction selection
|
2023-11-06 13:30:35 -06:00 |
|
David
|
f63fcbcb62
|
Merge pull request #9 from birth-software/zig-build-test
integrate tests into zig build API
|
2023-10-02 19:13:42 -06:00 |
|
David Gonzalez Martin
|
80ab6949d2
|
integrate tests into zig build API
|
2023-10-02 19:10:26 -06:00 |
|
David Gonzalez Martin
|
29dc3ffdf4
|
Fix release build
|
2023-10-02 14:20:40 -06:00 |
|
David
|
7977bccf64
|
Merge pull request #8 from birth-software/main-function
main function
|
2023-10-02 13:25:51 -06:00 |
|
David Gonzalez Martin
|
d391898b95
|
instruction encoding
|
2023-10-02 13:23:00 -06:00 |
|
David Gonzalez Martin
|
c7bcfa1de9
|
instruction selection and register allocation
|
2023-10-01 15:43:00 -06:00 |
|
David Gonzalez Martin
|
bca2f024cd
|
ir for main function
|
2023-09-30 12:51:58 -06:00 |
|
David Gonzalez Martin
|
611e611cab
|
sema for main function
|
2023-09-29 18:22:34 -06:00 |
|
David
|
bf07777ff7
|
Merge pull request #7 from birth-software/jit-x86
add jit for x86_64
|
2023-09-24 22:04:44 -06:00 |
|
David Gonzalez Martin
|
7c8acf3e2a
|
add jit for x86_64
|
2023-09-24 22:03:28 -06:00 |
|
David
|
f2064c93ff
|
Merge pull request #6 from birth-software/exit-process
exit process
|
2023-09-24 21:47:03 -06:00 |
|
David Gonzalez Martin
|
65d248588d
|
exit process
|
2023-09-24 21:45:52 -06:00 |
|
David
|
496fb35189
|
Merge pull request #5 from birth-software/general-infrastructure
General infrastructure
|
2023-09-22 09:20:12 -06:00 |
|
David Gonzalez Martin
|
a2535ac512
|
x86_64 backend
|
2023-09-22 09:16:39 -06:00 |
|
David Gonzalez Martin
|
48c3b5e224
|
ir
|
2023-09-21 12:29:39 -06:00 |
|
David Gonzalez Martin
|
15a7df3f14
|
Barebones semantic analysis
|
2023-09-16 21:11:24 -06:00 |
|
David Gonzalez Martin
|
cd32603137
|
add debugger support for windows
|
2023-09-09 17:01:07 -06:00 |
|
David Gonzalez Martin
|
953c3faf06
|
enable macos and windows
|
2023-09-06 15:27:54 -06:00 |
|
David Gonzalez Martin
|
4e99ae0bf7
|
rework parser and lexer
|
2023-09-06 15:22:32 -06:00 |
|
David Gonzalez Martin
|
6616abf57f
|
add carriage return and tabs to the lexer
|
2023-09-03 21:04:06 -06:00 |
|
David
|
b4cbdb5841
|
Merge pull request #4 from birth-software/wip
write better lexer and parser
|
2023-09-03 20:45:50 -06:00 |
|
David Gonzalez Martin
|
e8a2e79a00
|
write better lexer and parser
|
2023-09-03 20:44:18 -06:00 |
|
David
|
30931dc6f1
|
Merge pull request #3 from birth-software/progress
Introduce the general structure of the compiler
|
2023-07-29 11:05:34 -06:00 |
|