Justin Ethier
e705824a6d
Less verbose CPS debug printing
2018-05-21 13:31:37 -04:00
Justin Ethier
a55ab6780c
Remove obsolete imports
2017-11-28 17:01:41 -05:00
Justin Ethier
d0772c2238
Allow a program to have macros expand into a top-level import
expression.
2017-10-06 18:43:30 -04:00
Justin Ethier
6d0d81f9ef
Call opt:add-inlinable-functions to load inlines
2017-08-23 16:30:40 +00:00
Justin Ethier
f2db6235e0
Issue #206 - Fix cyc-seq, and only do it as an optimization
2017-07-18 17:41:33 -04:00
Justin Ethier
2febd970bb
Issue #200 - Consistency with new icyc cmd line
2017-05-16 04:39:07 +00:00
Justin Ethier
e378fd70dd
Add 3rd round of CPS optimizations
2017-05-15 20:03:39 +00:00
Justin Ethier
8be4221c1c
Cleanup, adjust formatting, remove debug statement
2017-05-10 10:37:55 +00:00
Justin Ethier
b74213ec2d
Attempt 2 CPS optimization passes
2017-05-04 05:11:23 +00:00
Justin Ethier
10569ddcfd
Get root library name
2017-04-29 00:46:47 +00:00
Justin Ethier
dc42d5a1d4
Only inline specifically designated functions
2017-04-28 21:28:30 +00:00
Justin Ethier
8b6830ea49
WIP - explicit inlines
2017-04-30 19:04:53 -04:00
Justin Ethier
eb4fe26284
Relocated function
2017-04-28 17:54:04 +00:00
Justin Ethier
8d7bff212a
WIP
2017-04-28 17:43:57 +00:00
Justin Ethier
4ae3269373
WIP
2017-04-27 19:06:08 -04:00
Justin Ethier
9b3a4769dc
Avoid naming conflicts with user defined inlines
...
Do not allow an inline if it conflicts with a global in the current module. This at least attempts to avoid obvious name conflicts. TBD if it is good enough or if additional fixes are necessary.
2017-04-27 18:52:22 -04:00
Justin Ethier
c2929af714
Added exception handler
2017-04-26 18:08:07 -04:00
Justin Ethier
51a1a63700
Register built-in inlines
2017-04-26 17:35:58 -04:00
Justin Ethier
f88016eb3e
WIP
2017-04-25 06:22:40 +00:00
Justin Ethier
3d2fdb36d9
WIP
2017-04-24 23:30:27 +00:00
Justin Ethier
998fb4efaa
WIP
2017-04-24 23:27:25 +00:00
Justin Ethier
0dafd88ed3
Check for inlinable functions after prim conv
...
At this point there are more opportunities for inlining.
2017-04-24 18:57:52 -04:00
Justin Ethier
9b7a5e3cfe
Explicitly check for a (define) form
2017-04-19 00:25:47 +00:00
Justin Ethier
9f26868ef0
Exclude lib init from inlinable top level funcs
2017-04-18 12:51:30 +00:00
Justin Ethier
d27b55d27b
Allow scheme inlines through, though C comp fails
2017-04-18 09:54:13 +00:00
Justin Ethier
547d1e218d
Re-enable inline searching code
2017-04-18 09:02:44 +00:00
Justin Ethier
124c137987
WIP
2017-04-18 07:47:32 +00:00
Justin Ethier
f1d5bb6f83
Find inlinable scheme functions
2017-04-18 05:55:00 +00:00
Justin Ethier
b607f9a420
WIP: (inlinable-top-level-function? expr)
2017-04-18 19:03:31 -04:00
Justin Ethier
c94dcf7be2
Fix compilation
2017-04-04 05:47:20 +00:00
Justin Ethier
298338586a
WIP - register inlinable Scheme functions
2017-04-04 19:02:24 -04:00
Justin Ethier
a93c1e8cde
Added so generation and dl lib
2017-03-23 04:47:47 -04:00
Justin Ethier
afcc5eaecd
WIP
2017-03-23 00:21:16 -04:00
Justin Ethier
bf2643ce3d
Added prim-convert
2017-03-21 11:15:53 +00:00
Justin Ethier
78c253e1c3
Issue #185 - Allow export of another lib's export
2017-03-20 17:01:25 +00:00
Justin Ethier
ff07229be1
Issue #185 - Identify pass thru exports
...
That is, exports that are not defined in a library, but are just "pass throughs" from other libraries imported by the library being compiled.
2017-03-20 14:02:15 +00:00
Justin Ethier
da0899b3e6
CC commands, not directories
2017-02-07 20:39:00 +00:00
Justin Ethier
ff94b013ab
Issue #153 - Added -CP -CE -CL command options
2017-02-07 20:34:42 +00:00
Justin Ethier
91c8171c93
WIP - cond-expand library declarations
2017-02-04 17:54:55 -05:00
Justin Ethier
c8c8ad6e3f
Refactoring and TODO
2017-02-03 23:46:06 +00:00
Justin Ethier
eef7892d14
Added (base-expander)
2017-02-04 00:10:20 -05:00
Justin Ethier
d57f55f406
Allow a program to use cond-expand for imports
2017-02-02 18:29:09 -05:00
Justin Ethier
3fe1dca790
Relocate imports for lib:get-all-import-deps
...
Read program imports earlier to also handle lib-deps
2017-02-02 17:28:26 -05:00
Justin Ethier
5303c0cf6c
Added TODO
2017-02-03 04:32:18 -05:00
Justin Ethier
ca3074e6bc
Issue #154 - Handle many top-level prog imports
2017-02-03 00:51:03 -05:00
Justin Ethier
ca048d5538
Add new command line options
2017-02-01 16:56:30 -05:00
Justin Ethier
cc0aefd3f2
Issue #165 - Handle includes as well
2017-02-02 02:03:28 -05:00
Justin Ethier
17d819a399
Issue #165 - -A
and -I
options
2017-02-02 00:10:54 -05:00
Justin Ethier
379cac7ac3
WIP: allowing append/prepend library paths
2017-01-31 18:50:40 -05:00
Justin Ethier
130274588c
Append/prepend dirs for .o files
2017-01-31 18:16:56 -05:00