Commit graph

140 commits

Author SHA1 Message Date
Andrea Corallo
94cae7b2bc fix again ssa renaming 2020-01-01 11:37:48 +01:00
Andrea Corallo
bbde29c012 add ssa param to comp-new-frame 2020-01-01 11:37:48 +01:00
Andrea Corallo
33ce5fe9da clean-up limplify 2020-01-01 11:37:48 +01:00
Andrea Corallo
c74f30c8e0 fix ssa renaming 2020-01-01 11:37:48 +01:00
Andrea Corallo
d7173579a7 remove incomplete propagation during limplification pass 2020-01-01 11:37:48 +01:00
Andrea Corallo
7abf1ca121 add phi finalizer 2020-01-01 11:37:48 +01:00
Andrea Corallo
b7d1b2e946 add ssa renaming 2020-01-01 11:37:48 +01:00
Andrea Corallo
cb2e6461f3 core reorder 2020-01-01 11:37:48 +01:00
Andrea Corallo
6963deed24 add comp-dominator-tree-walker 2020-01-01 11:37:48 +01:00
Andrea Corallo
e4b32e3c57 place phis 2020-01-01 11:37:48 +01:00
Andrea Corallo
deeae4c415 some code massage + doc into the SSA pass 2020-01-01 11:37:47 +01:00
Andrea Corallo
634f71a223 add dominator frontiers computation 2020-01-01 11:37:47 +01:00
Andrea Corallo
e39f5e5c80 compute dominator tree 2020-01-01 11:37:47 +01:00
Andrea Corallo
03045e2e73 ssa and endge number generation with generator 2020-01-01 11:37:47 +01:00
Andrea Corallo
c158b52ea4 add edge computation 2020-01-01 11:37:47 +01:00
Andrea Corallo
89c144b830 rename comp-ctxt-funcs comp-ctxt-exp-funcs 2020-01-01 11:37:47 +01:00
Andrea Corallo
d6d5062bba rework comp-new-frame 2020-01-01 11:37:47 +01:00
Andrea Corallo
7edbb163b3 rework basic block creation 2020-01-01 11:37:47 +01:00
Andrea Corallo
77e80ae013 fix missing cl- prefix in comp.el 2020-01-01 11:37:47 +01:00
Andrea Corallo
c702e25a7a do not override existing basic blocks when branching backwards! 2020-01-01 11:37:46 +01:00
Andrea Corallo
5f1039630d add verbosity parameter 2020-01-01 11:37:46 +01:00
Andrea Corallo
b32900474f rework log mechanism to work non interactively too 2020-01-01 11:37:46 +01:00
Andrea Corallo
a2b9d58b2e nit into comp-log 2020-01-01 11:37:46 +01:00
Andrea Corallo
5adfe6520b fix pretty printing in native compilation buffer 2020-01-01 11:37:46 +01:00
Andrea Corallo
ef6c633b9d add assertion for missing op support 2020-01-01 11:37:45 +01:00
Andrea Corallo
4c6272373d add defconst support 2020-01-01 11:37:45 +01:00
Andrea Corallo
f74ab3e9ef get right dependency during top level form evaluantion 2020-01-01 11:37:45 +01:00
Andrea Corallo
038f46c252 rename comp-slot-next -> comp-slot+1 2020-01-01 11:37:45 +01:00
Andrea Corallo
fca675dae3 fix varset and add a test 2020-01-01 11:37:45 +01:00
Andrea Corallo
59a428ed6c fix single function compilation 2020-01-01 11:37:45 +01:00
Andrea Corallo
555450c7b1 fix lambda handling and add a test for that 2020-01-01 11:37:45 +01:00
Andrea Corallo
4814c6b118 initial top level support (defvar working) 2020-01-01 11:37:44 +01:00
Andrea Corallo
29fcb6ca12 basic file compilation working 2020-01-01 11:37:44 +01:00
Andrea Corallo
37a794ce21 split final pass + some code rework 2020-01-01 11:37:44 +01:00
Andrea Corallo
3d9d7b3451 generalize code into comp.el for compile multiple funcitons 2020-01-01 11:37:44 +01:00
Andrea Corallo
2b51859d44 prepare for file compilation 2020-01-01 11:37:44 +01:00
Andrea Corallo
9913638cc5 use nrevese where necessary 2020-01-01 11:37:44 +01:00
Andrea Corallo
ff7093d74b some order into special vars 2020-01-01 11:37:43 +01:00
Andrea Corallo
43172dd01f fix relocs for all inliners 2020-01-01 11:37:43 +01:00
Andrea Corallo
7e92976bc7 fix last test broken by reload 2020-01-01 11:37:43 +01:00
Andrea Corallo
6cd45fbf37 rework stati object serialization 2020-01-01 11:37:43 +01:00
Andrea Corallo
6df64d170a fix relocation emission into comp.el 2020-01-01 11:37:42 +01:00
Andrea Corallo
76021e1e06 always release contex even in case of failure 2020-01-01 11:37:41 +01:00
Andrea Corallo
a102f471b3 emit relocs for callref too 2020-01-01 11:37:41 +01:00
Andrea Corallo
c698ac791b add authorship 2020-01-01 11:37:41 +01:00
Andrea Corallo
ad5488cad6 emit function relocation into structure 2020-01-01 11:37:40 +01:00
Andrea Corallo
d34eb7a39f reloc fist simple func 2020-01-01 11:37:40 +01:00
Andrea Corallo
620794aa93 emit function relocation name from comp.el 2020-01-01 11:37:40 +01:00
Andrea Corallo
5e06f2fc31 some clean-up into comp.el 2020-01-01 11:37:40 +01:00
Andrea Corallo
8bf2e4e282 add and call comp-add-subr-to-relocs 2020-01-01 11:37:40 +01:00