Justin Ethier
209050b2d4
Allow C compiler/linker options from a library to be expanded via cond-expand
2021-02-25 22:43:19 -05:00
Justin Ethier
dc597a9926
Issue #365 - Allow c-linker-options
to work as a top-level expression in a program
2021-01-18 15:57:45 -05:00
Justin Ethier
065a8bdd15
Issue #365 - Allow c-compiler-options to be used by programs
2021-01-18 15:03:27 -05:00
Justin Ethier
eb3250c0f1
Issue #365 - Added (c-compiler-options) expression for libs
2021-01-18 10:46:03 -05:00
Justin Ethier
046e7020b2
Added the -COPT compiler option
...
This allows easily specifying compiler options such as directories to search for header files.
2021-01-17 22:42:37 -05:00
Justin Ethier
6f5a60bfa4
Recompute library dep tree after macro expansion
...
Fix the compiler to recompute library dependencies for a program if additional import expressions were encountered during macro expansion.
2020-11-19 14:51:25 -05:00
Justin Ethier
6a1377178a
Issue #412 - Fix expand within a cond-expand
...
Allow these dependencies to be recognized by Cyclone.
2020-09-28 13:32:13 -04:00
Justin Ethier
f849a739af
Raise an error if library compilation fails
...
If a program tries to build a dependent library and the compilation fails, we need to know about it
2020-09-23 12:21:56 -04:00
Justin Ethier
dc30dba735
Expand library before reading imports
2020-09-02 18:10:41 -04:00
Justin Ethier
dc64d52412
Added -COBJ option
2020-08-14 16:44:43 -04:00
Justin Ethier
7b079d36d3
Pretty-up the top-level error messages
...
Make the output more readable when we have location information for the error.
2020-07-23 12:38:01 -04:00
Justin Ethier
0d25e5e122
Clean up error messages, provide filename if able
2020-07-21 22:35:47 -04:00
Justin Ethier
de1a97fbe7
Cleanup
2020-07-21 21:45:26 -04:00
Justin Ethier
8a65baef9c
Add custom exception handler to avoid call history
2020-07-21 12:36:42 -04:00
Justin Ethier
858cac4eee
Relocating source list to (scheme base)
2020-07-19 22:58:01 -04:00
Justin Ethier
64b81aa803
Fix code example
2020-05-18 10:03:34 -04:00
Justin Ethier
228f606b2e
Read c-linker-options
2020-02-20 13:47:04 -05:00
Justin Ethier
d9d78c226b
Added -CLNK
2020-02-19 13:45:58 -05:00
Justin Ethier
77a02fe26d
Issue #354 - Cleanup
2020-01-10 17:17:43 -05:00
Justin Ethier
bc3ab62439
Issue #354 - Initial support for includes
...
Still needs some cleanup, but the batch compilation code now also check source files used by (include) directives.
2020-01-10 13:41:10 -05:00
Justin Ethier
192e8a094f
WIP
2020-01-09 23:00:09 -05:00
Justin Ethier
2c3a85efb9
Issue #287
...
Do not inline functions if optimizations are disabled via `-O0`
2020-01-06 13:23:39 -05:00
Justin Ethier
b83bfec83c
Cleanup, indicate default batch setting
2020-01-06 13:03:47 -05:00
Justin Ethier
950700963a
Issue #354 - Added batch compilation ability
2020-01-03 18:41:42 -05:00
Justin Ethier
d72c54ca17
Debug library deps, added TODO
2020-01-03 10:29:57 -05:00
Justin Ethier
4c578f0394
Added -use-unsafe-prims
2019-11-26 15:10:28 -05:00
Justin Ethier
95d1200df0
Incorporate optimization flags
2019-11-13 13:16:45 -05:00
Justin Ethier
64c365378b
Added additional optimization flags
2019-11-13 12:57:06 -05:00
Justin Ethier
e98e35ee5b
Added -no-call-history
flag
...
Allow for faster executables at the expense of call history.
2019-10-14 13:01:16 -04:00
Justin Ethier
900605f1fe
Clean up old comments and dead code
2019-10-08 17:49:40 -04:00
Justin Ethier
829f7d86b0
Issue #336 - Compiler validation for "if"
2019-09-10 18:52:44 -04:00
Justin Ethier
fa01202df8
Do not attempt to memoize functions that take 0 args
2019-02-15 12:36:54 -05:00
Justin Ethier
7021855eca
Inject additional imports, added a TODO
2019-02-14 23:03:33 -05:00
Justin Ethier
d0d7fae89c
Only memoize pure functions for programs
...
The problem with doing this for libraries is that it adds a new dependency on (srfi 69). It would be problematic to use a library with these changes as there is no easy way to know this SRFI is also a library dependency.
2019-02-14 22:53:12 -05:00
Justin Ethier
e5be007539
Added memoization optimization flags
2019-02-14 21:10:06 -05:00
Justin Ethier
12291423c7
Syntax fix
2019-02-14 17:14:18 -05:00
Justin Ethier
b01ab9a671
Add missing Cyc-memoize even if srfi 69 is there
2019-02-14 16:56:05 -05:00
Justin Ethier
70264e001e
Fix injection of imports
2019-02-14 14:21:14 -05:00
Justin Ethier
f16b3fec93
WIP
2019-02-14 13:59:07 -05:00
Justin Ethier
0604fdf221
WIP for proof of concept
2019-02-14 13:23:20 -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
94f77f6075
Added TODO's
2019-02-13 15:37:53 -05:00
Justin Ethier
2a91c9431e
WIP
2019-02-12 18:55:10 -05:00
Justin Ethier
dd9b612be4
Disable debug printing
2018-12-18 17:32:57 -05:00
Justin Ethier
06d900bea9
Added TODO
2018-12-18 17:08:17 -05:00
Justin Ethier
d075a3a34a
Report elapsed time
2018-12-18 17:07:57 -05:00
Justin Ethier
a46a9e92d3
Pre-sort the list of globals
...
This cuts down on the amount of work that must be done by the alpha conversion.
2018-12-18 16:33:24 -05:00
Justin Ethier
1450d2520e
Added placeholder code
2018-12-17 12:54:20 -05:00
Justin Ethier
e31b357f4c
WIP
2018-11-12 16:30:11 -05:00
Justin Ethier
8cbcf82121
Added a special (program) feature
2018-11-10 06:52:54 -05:00