Irmen de Jong
|
cfa7258ff4
|
various
|
2022-10-25 23:18:42 +02:00 |
|
Irmen de Jong
|
585009ac5c
|
ir: fix syscall numbers and more
|
2022-10-24 01:57:37 +02:00 |
|
Irmen de Jong
|
30ee65fd14
|
ir: ensure that block and sub labels are also on the first chunk in said block/sub
|
2022-10-23 18:54:08 +02:00 |
|
Irmen de Jong
|
76428b16f0
|
Merge branch 'master' into labeledchunks
# Conflicts:
# codeGenIntermediate/src/prog8/codegen/intermediate/BuiltinFuncGen.kt
# docs/source/todo.rst
# examples/test.p8
# virtualmachine/src/prog8/vm/VirtualMachine.kt
|
2022-10-23 12:19:02 +02:00 |
|
Irmen de Jong
|
aa99a7df64
|
seed info
|
2022-10-22 17:54:24 +02:00 |
|
Irmen de Jong
|
00afa1ce52
|
ir: replace RND opcode by syscalls
|
2022-10-22 17:20:46 +02:00 |
|
Irmen de Jong
|
e94bf4c63c
|
replace rnd()/rndw() builtin functions by regular routines in math module
|
2022-10-22 17:02:43 +02:00 |
|
Irmen de Jong
|
ec5adffdc2
|
rnd()/rndf() routines can now be seeded with new rndseed()/rndseedf() routines. fixes #80
|
2022-10-22 13:34:22 +02:00 |
|
Irmen de Jong
|
733c17ad3a
|
improve docs on if syntax. fixes #81
|
2022-10-19 23:53:15 +02:00 |
|
Irmen de Jong
|
fabae6e970
|
ir: fix handling of labeled chunks
|
2022-10-16 23:53:17 +02:00 |
|
Irmen de Jong
|
a9f9c40d8a
|
ir: fix handling of labeled chunks
|
2022-10-13 00:56:44 +02:00 |
|
Irmen de Jong
|
6fc89607d3
|
ir: moving to labeled chunks, no more IRLabel nodes
|
2022-10-07 00:34:56 +02:00 |
|
Irmen de Jong
|
2340760f53
|
rename
|
2022-10-04 22:54:14 +02:00 |
|
Irmen de Jong
|
e7682119e0
|
ir: count register uses
|
2022-10-02 15:56:06 +02:00 |
|
Irmen de Jong
|
af6be44676
|
ir: adding register usage inspections
fix compiler problems with untrimmed inlined asm, and when only a single return statement is present in a subroutine
|
2022-09-30 20:25:00 +02:00 |
|
Irmen de Jong
|
94f0f3e966
|
ir: join code chunks
|
2022-09-30 02:47:33 +02:00 |
|
Irmen de Jong
|
7c1bdfe713
|
ir: uninitialized vars remain empty, bss section classifier (unused for now as there are no segements yet)
|
2022-09-28 16:56:50 +02:00 |
|
Irmen de Jong
|
e7a3a89bfb
|
fix windows issue
|
2022-09-27 22:41:48 +02:00 |
|
Irmen de Jong
|
7ea7e63f44
|
use require() more often
|
2022-09-27 18:27:55 +02:00 |
|
Irmen de Jong
|
1d2ce2cbeb
|
consolidate IR line parse function
|
2022-09-27 18:02:57 +02:00 |
|
Irmen de Jong
|
06cf2e0bd7
|
vm: fix memory slabs (bsieve example)
|
2022-09-27 16:32:44 +02:00 |
|
Irmen de Jong
|
9d219ae4b9
|
refactor
|
2022-09-27 03:32:39 +02:00 |
|
Irmen de Jong
|
71f5a6c50e
|
remove p8virt from compiler diagram
|
2022-09-27 02:52:29 +02:00 |
|
Irmen de Jong
|
90b2be2bf4
|
vm: new memory initialization of array vars
|
2022-09-27 02:43:50 +02:00 |
|
Irmen de Jong
|
db1aa8fcbd
|
vm: new translation of IRProgram into vm program list
|
2022-09-27 01:50:00 +02:00 |
|
Irmen de Jong
|
11c000f764
|
moved codeGenVirtual module into virtualmachine module
|
2022-09-26 20:00:40 +02:00 |
|
Irmen de Jong
|
4d6dcbd173
|
ir: consolidate IRCodeInstruction and Instruction
|
2022-09-26 19:46:44 +02:00 |
|
Irmen de Jong
|
0da117efd2
|
vm: get rid of .p8virt file and cruft
|
2022-09-26 19:28:40 +02:00 |
|
Irmen de Jong
|
533c368e32
|
make IRFileReader's file source more general
|
2022-09-26 14:47:28 +02:00 |
|
Irmen de Jong
|
1a56743bb1
|
fix IR repeat loop codegen when amount is 0
|
2022-09-25 20:48:17 +02:00 |
|
Irmen de Jong
|
387a4b7c35
|
added string.lowerchar() and string.upperchar()
|
2022-09-25 20:20:38 +02:00 |
|
Irmen de Jong
|
1d65d63bd9
|
ir: making sure all names are scoped properly. textelite now runs in vm
|
2022-09-25 18:02:35 +02:00 |
|
Irmen de Jong
|
dda19c29fe
|
vm: fix symbols to be case sensitive properly in p8virt assembler
|
2022-09-25 15:51:50 +02:00 |
|
Irmen de Jong
|
ca41669f4f
|
vm: fix scoped name in address-of inside array
|
2022-09-24 18:26:35 +02:00 |
|
Irmen de Jong
|
0e1886e6bd
|
vm: fix nested label prefixing
|
2022-09-24 16:00:25 +02:00 |
|
Irmen de Jong
|
c26e116f0e
|
vm: fix crashes when array contains pointers/strings
|
2022-09-24 14:42:07 +02:00 |
|
Irmen de Jong
|
5c9c7f2c5e
|
adding more complex vm examples
|
2022-09-23 14:56:06 +02:00 |
|
Irmen de Jong
|
ca2fb6cef3
|
IR no longer depends on VM syscalls but has its own syscall list for the few builtin functions that still require it
|
2022-09-23 14:27:51 +02:00 |
|
Irmen de Jong
|
46dac909ef
|
vm/math.p8: complete the sin and cos routines
|
2022-09-22 15:49:19 +02:00 |
|
Irmen de Jong
|
b1e4347e10
|
fix compiler crash sometimes when casting byte to word
|
2022-09-22 13:00:47 +02:00 |
|
Irmen de Jong
|
97aa91c75e
|
removed 16 bits sin/cos routines from math library (sin16, sin16r etc)
|
2022-09-22 12:55:00 +02:00 |
|
Irmen de Jong
|
4f8fb32136
|
some docs about compiler internal architecture
|
2022-09-21 17:34:52 +02:00 |
|
Irmen de Jong
|
e0fbce0087
|
few more unittests for IR
|
2022-09-21 02:59:36 +02:00 |
|
Irmen de Jong
|
fb22f78fb3
|
added '-keepIR' option to save the IR file if it's generated.
|
2022-09-20 12:30:22 +02:00 |
|
Irmen de Jong
|
d6393cdbe5
|
'-vm' option now also reads .p8ir files
|
2022-09-20 12:14:33 +02:00 |
|
Irmen de Jong
|
5167fdb3f0
|
docs
|
2022-09-20 04:10:49 +02:00 |
|
Irmen de Jong
|
b4352ad38b
|
refactor IR codegen into separate module
|
2022-09-19 19:24:24 +02:00 |
|
Irmen de Jong
|
d07d00fa41
|
Join codeAst and codeCore modules
|
2022-09-19 17:28:18 +02:00 |
|
Irmen de Jong
|
11d87e4725
|
VM: support cpu registers
|
2022-09-19 17:13:46 +02:00 |
|
Irmen de Jong
|
627ed51a1b
|
IR: mem mapped vars and memory slabs
|
2022-09-19 15:20:40 +02:00 |
|