racket/collects/compiler
Matthew Flatt 053734c4c8 fix compiler handling of top-/module-level constants
The JIT and bytecode compiler disagreed on the definition of
"constant". Now there are two levels: "constant" means constant across
all instantiations, and "fixed" means constant for a given instantation.
The JIT uses this distinction to generate direct-primitive calls
or not. (Without the distinction, a direct jump to `reverse' could
be wrong, because `racket/base' might get instantiated with the
JIT disabled or not.)

Also, fixed a bug in the JIT's `vector-set!' code in the case that
the target vector is a top-/module-level reference that is ready,
fixed, or constant.

original commit: 7eb2042bd9
2011-08-19 06:32:44 -06:00
..
commands ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
demodularizer adapt demodularizer to `compiler/zo-struct' change 2011-07-01 22:46:20 -06:00
bundle-dist.rkt rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
decompile.rkt fix compiler handling of top-/module-level constants 2011-08-19 06:32:44 -06:00
embed-sig.rkt rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
sig.rkt Parallel collects build (process-based) "raco setup -u" 2010-07-02 14:27:08 -06:00
zo-marshal.rkt fix compiler handling of top-/module-level constants 2011-08-19 06:32:44 -06:00
zo-parse.rkt fix compiler handling of top-/module-level constants 2011-08-19 06:32:44 -06:00
zo-structs.rkt generalize #%variable-reference' and add variable-reference-constant?' 2011-08-09 16:33:17 -06:00