Commit graph

307 commits

Author SHA1 Message Date
Andrea Corallo
c27394da7e Rework frame layout
Every function call by reference gets use one unique array of
arguments.
2020-02-15 10:17:08 +01:00
Andrea Corallo
fe9e4c42b3 Better function naming for comp-function-call-maybe-remove 2020-02-14 23:26:20 +01:00
Andrea Corallo
9e08edf98f Extend propagation to a wider set of (non pure) functions 2020-01-21 22:06:19 +00:00
Andrea Corallo
fce1333c22 Clean-up unnecessary member usage 2020-01-20 19:30:24 +00:00
Andrea Corallo
c1d034fc27 Split relocated data into two separate arrays
Rework the functionality of the previous commit to be more efficient.
2020-01-12 13:22:30 +01:00
Andrea Corallo
93ed2c32df Move function reloc data into pure space during bootstrap 2020-01-11 14:34:58 +01:00
Andrea Corallo
5a228fefb6 Prevent false warning emission 2020-01-03 17:47:09 +01:00
Andrea Corallo
b18f92a942 rework predicates to be homogeneous 2020-01-01 11:38:18 +01:00
Andrea Corallo
6c77a9e046 do not crash compilation trying to optimize wrong code 2020-01-01 11:38:18 +01:00
Andrea Corallo
976b7fcc8c fix aliased function names trampoline removal 2020-01-01 11:38:18 +01:00
Andrea Corallo
f0290502f3 disable propagation when non locals are present 2020-01-01 11:38:18 +01:00
Andrea Corallo
037b9897a4 add batch-byte-native-compile-for-bootstrap 2020-01-01 11:38:18 +01:00
Andrea Corallo
e666bf781f add customize comp-never-optimize-functions 2020-01-01 11:38:18 +01:00
Andrea Corallo
00f7fd7d42 fix non local propagation handling 2020-01-01 11:38:18 +01:00
Andrea Corallo
e678021f0c add batch-native-compile 2020-01-01 11:38:16 +01:00
Andrea Corallo
2ccce1bc39 some style fixes 2020-01-01 11:38:16 +01:00
Andrea Corallo
ca8d5ed6ec add disassemble support for native compiled functions 2020-01-01 11:38:15 +01:00
Andrea Corallo
42362d9914 remove load_handle_stack and use the implementation one 2020-01-01 11:38:14 +01:00
Andrea Corallo
a647a97320 better scratch slot support 2020-01-01 11:38:13 +01:00
Andrea Corallo
ac08a7f26c clean-up old function relocation code 2020-01-01 11:38:13 +01:00
Andrea Corallo
6c9acd13d0 single function native compilation doc + interactive support + tests 2020-01-01 11:38:12 +01:00
Andrea Corallo
a248dfe2c3 native compile interactive functions support 2020-01-01 11:38:12 +01:00
Andrea Corallo
48f5530e79 add int-spec to comp-func 2020-01-01 11:38:12 +01:00
Andrea Corallo
e2855d93ee renaming comp-decrypt-lambda-list -> comp-decrypt-arg-list 2020-01-01 11:38:11 +01:00
Andrea Corallo
4a639f3ae9 documentation nit 2020-01-01 11:38:11 +01:00
Andrea Corallo
9a87c4404f native-compile-async accept list as input 2020-01-01 11:38:11 +01:00
Andrea Corallo
7f5f60d543 insert compilation end message at the bottom of the buffer 2020-01-01 11:38:11 +01:00
Andrea Corallo
a214a29e48 fix comp-propagate-insn type propagation 2020-01-01 11:38:11 +01:00
Andrea Corallo
5411beae02 remove unnecessary return when printing blocks 2020-01-01 11:38:11 +01:00
Andrea Corallo
ba51c31b47 gate propagate to comp-speed > 1 2020-01-01 11:38:10 +01:00
Andrea Corallo
44023f3db2 fix comp-log-edges 2020-01-01 11:38:10 +01:00
Andrea Corallo
ba2bbea816 adjust print verbosity according to the doc 2020-01-01 11:38:10 +01:00
Andrea Corallo
831f5e6061 make buffer names constant 2020-01-01 11:38:10 +01:00
Andrea Corallo
f0b1519fbd rename native-compile-log-buffer -> comp-log-buffer-name 2020-01-01 11:38:10 +01:00
Andrea Corallo
ea421cfefe do not use thread for async compilation 2020-01-01 11:38:10 +01:00
Andrea Corallo
d2d2290436 better comp-byte-frame-size 2020-01-01 11:38:09 +01:00
Andrea Corallo
4fc8524df0 fix single function top level generation 2020-01-01 11:38:09 +01:00
Andrea Corallo
960aa0c798 review two slot names in comp-func 2020-01-01 11:38:09 +01:00
Andrea Corallo
a421c27723 fix single function compilation 2020-01-01 11:38:09 +01:00
Andrea Corallo
954eb9b4a0 homogeneous setf style 2020-01-01 11:38:09 +01:00
Andrea Corallo
8ef0a1814e better loop style into comp-compute-edges 2020-01-01 11:38:09 +01:00
Andrea Corallo
99258421bb sanityze orthography in comp.el 2020-01-01 11:38:09 +01:00
Andrea Corallo
0bf55d3a81 fix type hints error kind 2020-01-01 11:38:08 +01:00
Andrea Corallo
71b363e2b3 error handling rework 2020-01-01 11:38:08 +01:00
Andrea Corallo
eae7f30a9a comment nit 2020-01-01 11:38:08 +01:00
Andrea Corallo
ab5611c25b fix comp-propagate* 2020-01-01 11:38:07 +01:00
Andrea Corallo
407f5aac70 better comp-function-call-remove 2020-01-01 11:38:07 +01:00
Andrea Corallo
3681402bf1 improve dead assignment 2020-01-01 11:38:07 +01:00
Andrea Corallo
16fe8a4678 allow for pure function call removal optimization 2020-01-01 11:38:07 +01:00
Andrea Corallo
a99a3fbc40 fix jump table emission when test fn is not eq 2020-01-01 11:38:07 +01:00