Commit Graph

438 Commits (4c05bc4f1060449d86f89fe49e687d344641e955)

Author SHA1 Message Date
Slava Pestov 4c05bc4f10 Test updates 2009-05-28 02:50:07 -05:00
Slava Pestov 9987f272b0 CFG checker now checks consistency of successors and predecessors lists; fix long-standing bug in useless-blocks optimization 2009-05-28 02:49:51 -05:00
Slava Pestov 4292033da6 Fix alias analysis 2009-05-28 02:48:58 -05:00
Slava Pestov 1fc830a99e Add a with-scope so that optimize-tree doesn't pollute namespace 2009-05-27 18:58:54 -05:00
Slava Pestov 64da54234d Fixing local optimizations 2009-05-27 18:58:41 -05:00
Slava Pestov fe44ce2821 Better CFG checker 2009-05-27 18:58:14 -05:00
Slava Pestov dd8152f7bb Add phi elimination pass 2009-05-27 18:58:01 -05:00
Slava Pestov 3954c3fdc3 Add a new ##allocation union to remove some code duplication 2009-05-27 18:55:49 -05:00
Slava Pestov a29317df5f Remove old local DCE pass 2009-05-27 17:55:15 -05:00
Slava Pestov 1242a3a411 New local-optimization combinator removes some boilerplate 2009-05-26 19:56:56 -05:00
Slava Pestov 25805f9bfe Refactoring low-level optimizer to support stack analysis pass 2009-05-26 19:31:19 -05:00
Slava Pestov 957bc53d4b Move maybe-set-at to assocs 2009-05-26 18:45:37 -05:00
Slava Pestov f6fab1b035 Fix another bug in stack-analysis 2009-05-26 03:42:39 -05:00
Slava Pestov 75d1f6dfda compiler.cfg.stack-analysis: make it pass more tests 2009-05-26 02:59:14 -05:00
Slava Pestov 44437cc891 compiler.cfg.dce: new global dead code elimination pass 2009-05-26 02:58:57 -05:00
Slava Pestov 015b7afe93 compiler.cfg.checker: new check-rpo word 2009-05-26 02:58:40 -05:00
Slava Pestov 1c45d0e81b compiler.cfg.stack-analysis: progress 2009-05-25 19:18:13 -05:00
Slava Pestov 5d50f4eb5b compiler.cfg.checker: new vocabulary for checking CFG invariants 2009-05-25 19:16:58 -05:00
Slava Pestov 531580ed30 compiler.cfg.builder: don't make basic blocks after terminating calls 2009-05-25 19:16:36 -05:00
Slava Pestov ffd0db30bf Merge branch 'master' into global_optimization 2009-05-23 15:55:04 -05:00
Slava Pestov c2499cdd55 stack-checker: fix case where invalid code could infer 2009-05-23 15:50:35 -05:00
Slava Pestov f28439329c compiler.cfg.stack-analysis: change how inc-d/inc-r work 2009-05-23 15:47:08 -05:00
Slava Pestov 8478881522 Merge branch 'master' into global_optimization 2009-05-23 01:03:24 -05:00
Joe Groff 483c936eb3 get rid of useless test 2009-05-21 20:56:57 -05:00
Slava Pestov b42bed7e77 CFG optimizer work in progress - adding phi nodes 2009-05-21 16:49:28 -05:00
Slava Pestov 873bb49849 Working on global optimizations 2009-05-19 17:28:13 -05:00
Slava Pestov ba04d5af1e Update documentation for stricter vocabulary search path semantics 2009-05-16 00:29:21 -05:00
Slava Pestov 344f3668e4 Fix escape analysis bug reported by Doug 2009-05-15 17:18:38 -05:00
Slava Pestov d7db5edadc Cleaning up USING: lists for new strict semantics 2009-05-14 16:54:16 -05:00
Slava Pestov 302d829ea9 Fix compiler breakage if a GENERIC# has an incorrect stack effect declaration 2009-05-12 21:23:52 -05:00
Slava Pestov 05146c6907 Remove compiled slot from quotations since its not needed 2009-05-12 03:09:15 -05:00
Slava Pestov 70deacb900 Fix unit tests and load errors for slip removal 2009-05-10 17:03:41 -05:00
Slava Pestov dfb7514a02 Removing slip usage from basis 2009-05-10 15:28:22 -05:00
Slava Pestov 9b419aa0b1 Count megamorphic cache hits 2009-05-07 14:26:08 -05:00
Slava Pestov e55f0d17e5 compiler.tree.modular-arithmetic: convert >integer >fixnum into >fixnum 2009-05-07 12:54:23 -05:00
Slava Pestov 3c19ec1cbb Fix overly-eager strength reduction for mod, and add a type function for >integer (reported by Joe Groff) 2009-05-07 12:32:06 -05:00
Slava Pestov d3b85c14c9 Working on inline caching for tail call sites 2009-05-06 19:22:22 -05:00
Slava Pestov 478d29a175 Better separation of concerns: cpu.{x86,ppc}.assembler no longer depends on compiler.codegen.fixup and cpu.architecture. Rename rt-xt-direct to rt-xt-pic to better explain its purpose 2009-05-06 16:14:53 -05:00
Slava Pestov 0ca1d013f8 Add new RC_ABSOLUTE_PPC_2 relocation type 2009-05-05 20:56:23 -05:00
Slava Pestov c5d3bbd5b6 Fix bool type; its actually 1 byte not 4 in structs. Bug reported by jedahu 2009-05-05 18:37:40 -05:00
Slava Pestov 259586e89e compiler.constants: update compiled-header-size 2009-05-05 15:06:05 -05:00
Slava Pestov 1e2561f863 Make walker work better with call( and breakpoints which are nested inside combinators 2009-05-05 09:12:32 -05:00
Slava Pestov c68e05d3d8 Fix some test failures 2009-05-04 09:44:26 -05:00
Slava Pestov 4d438a3edd Remove cruddy string encoding/decoding code from VM 2009-05-02 13:45:38 -05:00
Slava Pestov 2c78b77f36 Fix infinite loop when compiling a word containing a tuple literal with circular structure in it. This was triggered by call( inline caching in core-foundation.fsevents on Mac OS X 2009-05-01 09:36:53 -05:00
Slava Pestov 7495ad96cb Fix typo in redefine14 test 2009-05-01 08:29:04 -05:00
Slava Pestov a25577d6df Some new compiler tests 2009-05-01 06:48:33 -05:00
Slava Pestov 6f03366e2b Rename enable/disable-compiler to enable/disable-optimizer, and add with-optimizer and without-optimizer combinators 2009-05-01 05:52:05 -05:00
Slava Pestov 23b5888da6 Fix some test failures and add an unportable tag 2009-04-30 22:56:15 -05:00
Slava Pestov e5cdb7ac2d call( fast-path now supports curry and compose 2009-04-30 21:08:29 -05:00