Bananymous
|
882607b13d
|
Add LICENSE
|
2024-04-30 01:34:05 +03:00 |
Bananymous
|
0508bde07c
|
Add some code examples that I used as test cases during implementation
|
2024-04-30 01:29:09 +03:00 |
Bananymous
|
83c560b2a9
|
Add a text document descibing my implementation of Phase 4
|
2024-04-30 01:28:10 +03:00 |
Bananymous
|
3fa0e5f655
|
Fix check for when stack frame is needed
|
2024-04-30 00:05:52 +03:00 |
Bananymous
|
c37e48e8b2
|
Make boolean variables be only bottom byte of %rax (%al)
|
2024-04-29 22:23:57 +03:00 |
Bananymous
|
8bd65f4c05
|
Don't save stack frame if function does no calls
|
2024-04-29 22:21:09 +03:00 |
Bananymous
|
e70b078b35
|
Make optimization optional with flag
|
2024-04-29 22:18:10 +03:00 |
Bananymous
|
999cc0d5d1
|
Fix bugs about bound checking for immediate
|
2024-04-29 22:00:41 +03:00 |
Bananymous
|
db4f37709f
|
Optimize consecutive mov/add/sub instructions to single instruction
|
2024-04-29 22:00:41 +03:00 |
Bananymous
|
1e8bdf6cd2
|
Optimize addition/subtraction of immediate 1 and zeroring registers
|
2024-04-29 21:34:44 +03:00 |
Bananymous
|
2141a17d1e
|
Optimize artithmetic with immediate values
|
2024-04-29 21:19:16 +03:00 |
Bananymous
|
351634e512
|
Fix bug with temporary registers and optimize binary_op code gen
|
2024-04-29 21:03:39 +03:00 |
Bananymous
|
69ae83efcb
|
Implement basic optimization step for generated assembly
|
2024-04-29 18:18:42 +03:00 |
Bananymous
|
79ca8e78b3
|
Optimize binary_op generation to use less stack if possible
|
2024-04-29 18:18:24 +03:00 |
Bananymous
|
56bcad6fc1
|
Generated code is now kept as list of instructions
|
2024-04-29 17:22:49 +03:00 |
Bananymous
|
8c8d294527
|
Cleanup arguments
|
2024-04-28 03:22:32 +03:00 |
Bananymous
|
8656d74139
|
Cleanup code and add arguments for compiling code
|
2024-04-28 03:02:25 +03:00 |
Bananymous
|
5c5942629d
|
Implement date attribute reading
This is very inefficient implementation.
This calls strftime with correct modifier and then atoi() to
turn the result into integer
|
2024-04-28 02:22:32 +03:00 |
Bananymous
|
1c1d721f7c
|
Fix attribute_{read,write} types to int
|
2024-04-28 02:20:35 +03:00 |
Bananymous
|
9238eae5ee
|
Implement simple assembly transpiler for phase 4
The code produced is not optimized at all. This fills all other
aspects of phase4 except for date attribute access.
|
2024-04-28 01:37:24 +03:00 |
Bananymous
|
53e945fbe5
|
Fix true/false naming on unless_expression
|
2024-04-28 01:35:48 +03:00 |
Bananymous
|
04a899247e
|
Implement proper semantic checking for full AST
|
2024-04-27 00:05:53 +03:00 |
Bananymous
|
7a306b7904
|
Add phase 3 text document
|
2024-04-13 23:26:13 +03:00 |
Bananymous
|
91a3a0ba2e
|
Implement phase 3 semantic checking
|
2024-04-13 22:56:20 +03:00 |
Bananymous
|
004ee25273
|
Make comments greedy
This allows having multiple comments
|
2024-03-15 08:35:17 +02:00 |
Bananymous
|
cb4c194420
|
Add exception handling for date parsing in lexer
|
2024-03-04 02:01:52 +02:00 |
Bananymous
|
3ae6068215
|
Phase 02: write required text document
|
2024-03-04 01:54:59 +02:00 |
Bananymous
|
edadabc7ba
|
Implement phase 02 syntax analysis
|
2024-03-04 01:54:42 +02:00 |
Bananymous
|
d4708ae322
|
Add README.md for phase 1
|
2024-02-14 02:41:33 +02:00 |
Bananymous
|
9510c0d7a6
|
Implement phase 1 lexer
|
2024-02-14 02:32:21 +02:00 |
Jyke Savia
|
91716ae12f
|
spring 2024 git template
|
2023-12-18 07:45:29 +02:00 |
repolainen
|
c98ef5f0bf
|
Template repository initialization
|
2023-12-15 11:12:30 +02:00 |