guile/module/language/tree-il
Andy Wingo 116f94d661 Add language-specific analysis pass to compiler infrastructure
* module/system/base/compile.scm (compute-analyzer): Compute analyzer to
  run on expressions before the compiler runs.
  (add-default-optimizations): Flesh out; still a stub.a
  (read-and-compile, compile, compile-and-load, compile-file): Default
  warning and optimization levels.
  (default-warning-level): New parameter, defaulting to 1.
  (default-optimization-level): New parameter, defaulting to 2.
  Currently unused.
* module/system/base/language.scm (<language>): Add
  optimizations-for-level and analyzer fields.
* module/language/tree-il/compile-bytecode.scm (compile-bytecode):
* module/language/tree-il/compile-cps.scm (optimize-tree-il): No need to
  run warnings passes here; compilers infrastructure will run them.
* module/language/tree-il/spec.scm (tree-il): Define make-analyzer as
  analyzer.
* module/language/tree-il/analyze.scm (make-analyzer): New exported
  procedure.
  (%warning-passes): New private variable.
* .dir-locals.el: Add with-test-prefix/c&e indent mode.
* test-suite/tests/cross-compilation.test:
* test-suite/tests/optargs.test:
* test-suite/tests/tree-il.test: Adjust to disable default warnings.
2020-05-08 15:39:41 +02:00
..
analyze.scm Add language-specific analysis pass to compiler infrastructure 2020-05-08 15:39:41 +02:00
compile-bytecode.scm Add language-specific analysis pass to compiler infrastructure 2020-05-08 15:39:41 +02:00
compile-cps.scm Add language-specific analysis pass to compiler infrastructure 2020-05-08 15:39:41 +02:00
cps-primitives.scm Optimize fixnum or s64 -> f64 conversions 2019-09-01 20:46:04 +02:00
debug.scm Add "mod" field to tree-il toplevel ref, set, define 2019-08-18 22:27:12 +02:00
effects.scm Add primitive support for working with module variables 2019-08-18 22:27:12 +02:00
eta-expand.scm Add eta-expansion pass after peval 2020-01-15 16:11:15 +01:00
fix-letrec.scm Add "mod" field to tree-il toplevel ref, set, define 2019-08-18 22:27:12 +02:00
letrectify.scm Disable eta-expansion in letrectification 2020-01-15 16:11:20 +01:00
optimize.scm Add eta-expansion pass after peval 2020-01-15 16:11:15 +01:00
peval.scm Fix peval bug that ignored excess args 2020-01-12 21:11:09 +01:00
primitives.scm Ensure <prompt> handler is values handler 2020-05-04 10:53:29 +02:00
spec.scm Add language-specific analysis pass to compiler infrastructure 2020-05-08 15:39:41 +02:00