Commit graph

155 commits

Author SHA1 Message Date
Andrea Corallo
c31b471cad add direct-call direct-callref into frontend 2020-01-01 11:37:50 +01:00
Andrea Corallo
2cd60cb592 guard comp-call-optim-form-call for byte compiled callee 2020-01-01 11:37:50 +01:00
Andrea Corallo
403a7e59d5 fix compilation for comp.el 2020-01-01 11:37:50 +01:00
Andrea Corallo
a8d358ed23 adding comp-call-optim pass 2020-01-01 11:37:50 +01:00
Andrea Corallo
bd3cd579cb remove comp-emit-funcall 2020-01-01 11:37:50 +01:00
Andrea Corallo
a317620a52 add comp-call-optim pass 2020-01-01 11:37:50 +01:00
Andrea Corallo
47b22e5514 add pushhandler to clobber operators 2020-01-01 11:37:49 +01:00
Andrea Corallo
69cbf2b2f3 keep on fixing ssa 2020-01-01 11:37:49 +01:00
Andrea Corallo
83a146b24e rewriting ssa rename 2020-01-01 11:37:49 +01:00
Andrea Corallo
17ecb1c728 give back basic block a C like name 2020-01-01 11:37:49 +01:00
Andrea Corallo
05b733e86c fix comp-compute-edges handling all kind of branches 2020-01-01 11:37:49 +01:00
Andrea Corallo
ca28d5fd72 add some notes 2020-01-01 11:37:49 +01:00
Andrea Corallo
6d1c453726 fix switch emission due to missing const prop 2020-01-01 11:37:49 +01:00
Andrea Corallo
747c6a0dc8 modify callref format to explicitate mvars 2020-01-01 11:37:49 +01:00
Andrea Corallo
351576f913 adding propagation 2020-01-01 11:37:49 +01:00
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