Commit Graph

41 Commits

Author SHA1 Message Date
Matthias Raba
0e1f31080e fixed method/constructor overloading in bytecode generator 2024-06-28 09:20:03 +02:00
mrab
6b4b9b496d fixed local variable declaration being ignore inside for loop 2024-06-26 09:42:07 +02:00
Matthias Raba
6346cb237b removed redundant definitions for opcodeEncodingLength 2024-06-24 11:20:24 +02:00
Matthias Raba
946a1f374c fixed stack op depth for getfield 2024-06-24 07:44:04 +02:00
Matthias Raba
8eb9c16c7a typos, formatting, comments 2024-06-21 08:49:55 +02:00
Matthias Raba
4435f7aac8 Changed internal type of boolean, because it's obviously Z not B haha 2024-06-21 08:07:20 +02:00
Matthias Raba
79ddafbf9a Fixed class offset in constant pool when newly inserted 2024-06-21 07:37:25 +02:00
Matthias Raba
29faab5112 maxStack calculation 2024-06-20 15:07:02 +02:00
Matthias Raba
ee302bb245 maxLocals calculation 2024-06-18 07:37:01 +02:00
Matthias Raba
2c928ad69b renamed Generator -> Builder 2024-06-14 08:54:12 +02:00
Matthias Raba
b47da4633d refactored assemblers & builders to individual files 2024-06-14 08:47:45 +02:00
Matthias Raba
807aea112e added Test classes, fixed assignment dup missing 2024-06-14 07:57:38 +02:00
mrab
9e43b015b7 injecting initializers into all constructors, multiple classes per file supported 2024-06-13 22:25:35 +02:00
mrab
3acbce8afc fixed invalid dup depth for postinc/dec 2024-06-13 21:02:00 +02:00
mrab
3f6eb68e91 implemented arbitrarily nested increment operators 2024-06-13 20:51:10 +02:00
mrab
613a280079 Method & constructor calls fully working 2024-06-13 20:17:23 +02:00
Matthias Raba
4def6e5804 name resolution for fields 2024-06-13 15:35:42 +02:00
mrab
b41a77ba33 boolean AND/OR, if/else goto fixed 2024-06-12 19:57:09 +02:00
mrab
06dad4d7f9 resolved circular imports 2024-06-12 16:55:19 +02:00
mrab
bbe0d86670 partial revert 2024-05-31 11:44:53 +02:00
mrab
2b7d217e8a moved expression statement and expressionstatement 2024-05-31 11:24:11 +02:00
mrab
6f4143a60a increment/decrement 2024-05-16 11:42:48 +02:00
mrab
d0d2cbd081 restructured bytecode code 2024-05-16 10:39:27 +02:00
mrab
09f70ca789 While assembly 2024-05-16 09:53:36 +02:00
mrab
535a6891ad Local variable assignment 2024-05-16 09:28:00 +02:00
e572975bda add: inject default constructor 2024-05-15 11:45:41 +02:00
mrab
207fb5c5f3 local variables working 2024-05-15 11:23:40 +02:00
b095678769 add: local variable assembler 2024-05-15 10:01:01 +02:00
mrab
a4fff37b07 Bugfix: else assembly 2024-05-14 14:09:24 +02:00
mrab
a179dec3ea else Assembly 2024-05-14 13:57:20 +02:00
mrab
f9f984568f block and if assembly (no else) 2024-05-14 13:20:37 +02:00
mrab
d1d9a5d6e1 constructor and method call using this 2024-05-14 12:29:55 +02:00
mrab
86e15b5856 method assembly is actually used (yay) 2024-05-14 11:12:12 +02:00
mrab
09469e0e45 added boolean expression assembly 2024-05-14 10:28:57 +02:00
mrab
d54c7cd7e6 Working pipeline for whole compiler 2024-05-08 15:23:18 +02:00
mrab
176b98d659 expression assembler 2024-05-07 21:18:01 +02:00
b7d8f19433 add: MethodBuilder 2024-05-07 16:32:36 +02:00
068b97e0e7 add: constantPoolBuilding 2024-05-07 14:27:20 +02:00
c920a3dfb6 add: Classbuilder & ClassFileBuilder 2024-05-07 11:54:54 +02:00
mrab
f93a1ba58c working export of binary class files 2024-05-04 19:08:41 +02:00
mrab
967c3a4b41 Moved bytecode stuff into separate folder 2024-05-04 16:28:42 +02:00