Commit graph

1345 commits

Author SHA1 Message Date
Justin Ethier
6f9a7800b7 Experimental changes 2019-03-29 17:31:59 -04:00
Justin Ethier
0f1469da61 Bump to 0.11 2019-03-28 12:22:13 -04:00
Justin Ethier
38847f11cf Add extra condition to (alloca?)
Make this match what is actually done in cgen for when a while statement is introduced, there was an older case not being handled.
2019-03-27 13:18:31 -04:00
Justin Ethier
27469be2ef Fix typo 2019-03-27 13:18:17 -04:00
Justin Ethier
e68fa56f94 Bugfix - account for the use-alloca flag 2019-03-22 12:26:10 -04:00
Justin Ethier
f13186ee17 Use static alloc for clo/vec, instead of alloca
This improves performance as the C compiler can better optimize the generated code.
2019-03-22 10:34:48 -04:00
Justin Ethier
12d6cbce5a Use explicit if's instead of memv for case
Theory is the generated code can make better use of the processor cached when using explicit if statements than aggregating over a list via memv, since pairs in the list can be located anywhere across memory.
2019-03-20 17:39:55 -04:00
Justin Ethier
5dd5a5eef2 Stub for new version 2019-03-17 18:48:27 -04:00
Justin Ethier
1f7212a964 Faster version of _list-index 2019-03-14 15:43:36 -04:00
Justin Ethier
3bf2a6125c Fast list/vector functions also allocate mutable objs 2019-02-28 13:47:32 -05:00
Justin Ethier
f64d429ab8 WIP 2019-02-28 09:43:58 -05:00
Justin Ethier
d9f63a85b4 Revert previous change 2019-02-27 16:03:19 -05:00
Justin Ethier
1f8a824bda More efficient record type construction 2019-02-27 15:44:50 -05:00
Justin Ethier
8772c5355b Faster initialization of objects create via define-record-type 2019-02-27 14:31:14 -05:00
Justin Ethier
0f0beb024c Do not use vector-set when creating record types
This improves performance as mutations force the GC to do more work.
2019-02-27 10:29:18 -05:00
Justin Ethier
6bfff4b6ed Perform fixnum type check 2019-02-19 13:17:33 -05:00
Justin Ethier
db7fd2bf81 Tentative version bump 2019-02-19 13:14:05 -05:00
Justin Ethier
8efbf60528 Must explicitly call (complex?) now 2019-02-18 22:12:55 -05:00
Justin Ethier
b4c19b1c7d Use 0.9.9 instead 2019-02-18 12:32:57 -05:00
Justin Ethier
b2997de54a Prep 0.9.8.1 bugfix release 2019-02-18 12:13:03 -05:00
Justin Ethier
fa01202df8 Do not attempt to memoize functions that take 0 args 2019-02-15 12:36:54 -05:00
Justin Ethier
12b6131992 Cut-over to Cyc-memoize 2019-02-14 12:47:36 -05:00
Justin Ethier
53471fc4c1 Rework setting of globals and checking flags, for cps opt 2019-02-13 18:53:43 -05:00
Justin Ethier
3af8cef894 Rework to use add-globals and flag-set functions 2019-02-13 18:52:52 -05:00
Justin Ethier
a20f020f66 Emit lambda AST's 2019-02-13 15:00:38 -05:00
Justin Ethier
f6be983113 Replace unnecessary and-let* 2019-02-13 11:58:37 -05:00
Justin Ethier
2c418ec33d Fix extraction of options 2019-02-13 10:41:02 -05:00
Justin Ethier
2a91c9431e WIP 2019-02-12 18:55:10 -05:00
Justin Ethier
dab0d9a570 Extract data from pair 2019-02-12 14:03:54 -05:00
Justin Ethier
3bbd89ce2c WIP 2019-02-12 14:01:13 -05:00
Justin Ethier
e060247d8a Cleanup interface to opt:memoize-pure-fncs 2019-02-10 18:58:18 -05:00
Justin Ethier
a988582228 WIP 2019-02-10 18:48:53 -05:00
Justin Ethier
1caa277f8a Added TODO 2019-02-08 13:24:23 -05:00
Justin Ethier
4d7d312baa Relocate file 2019-02-08 13:11:29 -05:00
Justin Ethier
50e1ec5f84
Update hashset.sld
Clarify use of this module in the header comments.
2019-02-01 10:25:01 -05:00
arthurmaciel
a8cf5d9312 Previous try to correct semi-colon bug failed due to adding semi-colon to the end of a whole block and not each statement 2019-01-27 21:03:22 -02:00
Justin Ethier
402ae5dea0 Fix comment 2019-01-25 19:05:10 -05:00
arthurmaciel
40fbb91bc3 Converted improper semi-colons into double ones 2019-01-25 19:10:10 -02:00
arthurmaciel
c04c930c3e Moved trailing parens into correct position -
only preserved those preceded by commented code
2019-01-25 17:43:09 -02:00
Justin Ethier
ab8910fc14
Merge pull request #298 from arthurmaciel/master
Updated scheme/cyclone/cgen.sld to insert correct
2019-01-25 13:24:13 -05:00
arthurmaciel
6dfb306cf1 Updated scheme/cyclone/cgen.sld to insert correct 2019-01-25 15:30:12 -02:00
Justin Ethier
dd0b66eb48 Bump to 0.9.8 2019-01-22 12:30:01 -05:00
Justin Ethier
459e9a97b0 Hack to re-enable beta expand 2019-01-17 22:36:57 -05:00
Justin Ethier
b0000c42e7 Test re-enabling beta expansion 2019-01-17 16:58:45 -05:00
Justin Ethier
4b72131ac6 Enabled faster mutated-by-set 2019-01-17 16:26:32 -05:00
Justin Ethier
bee311de80 WIP 2019-01-17 15:27:47 -05:00
Justin Ethier
8cb0dd1b20 Issue #293 - Added adbf:vars-mutated-by-set 2019-01-17 13:24:16 -05:00
Justin Ethier
f02b561fb6 Issue #292 2019-01-15 15:16:01 -05:00
Justin Ethier
95e0b4da75 Cleanup 2019-01-11 15:55:09 -05:00
Justin Ethier
02b884bf32 Issue #293 - Do not inline if any mutated prim args
As a first cut, do not inline a prim call if any of its arguments has been mutated by a (set!). This is too restrictive but a decent starting point.
2019-01-11 13:02:42 -05:00