Commit Graph

226 Commits

Author SHA1 Message Date
Matthew Flatt
3c46e5fdc6 fixes for submodules and `variable-reference->namespace'
Closes PR 12925

Merge to 5.3

original commit: d95ec4d454
2012-07-22 11:54:46 -05:00
Matthew Flatt
a8aec864b9 `raco decompile' fix
original commit: c69ea5569f
2012-07-01 09:25:12 -06:00
Matthew Flatt
4be962e720 fix problems with references to bindings at higher phases
original commit: 577cf4592e
2012-06-27 09:57:50 -06:00
Matthew Flatt
359eb87abb fix zo-parse, zo-struct, etc. for context in whole-module import
original commit: 6173b7eb05
2012-06-23 05:21:53 -07:00
Matthew Flatt
fd364dc2de raco exe: checks on source and destination paths
Disallow creating a launcher whose source is the launcher itself,
for example.

original commit: 2fcb635790
2012-05-28 20:30:58 -06:00
Matthew Flatt
767cae7e20 raco decompile: show `require's
original commit: 68029b4ade
2012-05-16 07:12:26 -06:00
Matthew Flatt
c9f62c0bc5 fix `compiler/zo-parse', etc. for phase-shift addition
original commit: d93f4214a4
2012-05-13 09:00:28 -06:00
Matthew Flatt
95e0451656 zo-parse update for phase-shift syntax object marshaling
original commit: 92db2b4fb3
2012-05-13 06:57:44 -06:00
Matthew Flatt
5139f5e8d6 allow #f as shift for `syntax-shift-phase-level'
original commit: dbd940611e
2012-05-12 00:55:12 -06:00
Eli Barzilay
ae29015ee7 A bunch of fprintf' -> eprintf' conversions (and a few related things).
original commit: 17090fca4f
2012-05-06 12:06:00 -04:00
Eli Barzilay
d0f469f166 Fix command-line for the demodularizer.
Closes PR 12731.

original commit: 16d40c3170
2012-04-28 05:23:43 -04:00
Matthew Flatt
ac6210c42e save modidx submodule path in bytecode form
This change should have been part of 9ba663aa77.

original commit: f099eec2af
2012-04-26 21:45:00 -06:00
Matthew Flatt
4b4a17b3c6 fix `raco demod' for new submodule fields in zo structs
original commit: 16d65ed251
2012-04-04 07:37:30 -06:00
Danny Yoo
197004495a Optimize cpt-table-lookup
(Tweaked by Eli.)

original commit: 8f2ea07ec5
2012-04-04 02:52:51 -04:00
Matthew Flatt
5868d51521 make --run-if-absent' the default mode for raco test'
This convention makes it easier to deal with a set
of ".rkt" files that implement tests, while a `test'
module implements a `main'-like split for some of the
files.

original commit: 63a4414863
2012-03-29 14:55:14 -06:00
Matthew Flatt
6a69441d84 promote raco test'; demote raco unpack'
original commit: 96e4fa0d13
2012-03-29 14:55:14 -06:00
Matthew Flatt
32da9b50bb doc corrections and improvements related to submodules
In particular, add `module+' to the Guide.

original commit: 876bc6f02b
2012-03-22 15:12:55 -06:00
Matthew Flatt
95ed87abd4 decompiler repairs related to changes for submodules
original commit: 5dc08cbe03
2012-03-12 09:04:37 -06:00
Jay McCarthy
98fa97ae26 racket/slice, expand raco test, remove begin-for-testing
original commit: f8325776cf
2012-03-09 19:51:42 -07:00
Jay McCarthy
9741ae6d98 Adding module**, when-testing, and raco test
original commit: b73444a0f3
2012-03-09 15:54:18 -07:00
Matthew Flatt
f2dbacc73f raco exe' uses a main' submodule, if any
original commit: 85802f45f2
2012-03-09 10:34:57 -07:00
Matthew Flatt
a0837b2453 first cut at submodules
original commit: 3d69dfab86
2012-03-09 10:34:56 -07:00
Matthew Flatt
02d466aec0 add --launcher'/-l' flag to `raco exe' to create launchers
This addition triggered several other changes:

 * -k for a Mac OS X embedding is now relative to the __PLTSCHEME
   segment (which means that executables won't break if you strip
   them, for example)

 * the command-line no longer has a limited size for Mac OS X
   launchers and embedding executables

 * Mac OS X GUI and Windows launchers record the creation-time
   collection path, unless they are created as "relative" launchers

original commit: 2c479683d1
2012-02-13 16:27:51 -07:00
Matthew Flatt
ee5fdf3771 change `raco demod' test to write to temporary drectory
Also add `-o' option to `raco demod'.

original commit: 577f38f649
2012-02-10 14:02:12 -07:00
Matthew Flatt
90583ce572 adjust `raco ctool --c-mods' and related to work with places
That is, the generated declare_modules() function registers the
module-declaration code so that it is run in any new place, too.

Merge to 5.2.1

original commit: 481e061440
2012-01-19 13:14:02 -07:00
Matthew Flatt
f751553b48 document raco make' flags; add --disable-constant' flag
original commit: 6b6d281dee
2012-01-19 13:14:02 -07:00
Matthew Flatt
cd5e01e03c fix `raco make --no-deps'
original commit: b87a7c0ec9
2011-12-13 06:13:17 -07:00
Matthew Flatt
1963cc91b7 fix demod for inline-variant
original commit: 788e8bb5f4
2011-12-03 06:15:58 -07:00
Matthew Flatt
52fa72bd6b first cut at cross-module function inlining
Inline only trivial functions, such as `(empty? x)' -> `(null? x)',
to avoid generating too much code.

Bytecode includes a new `inline-variant' form, which records a
version of a function that is suitable for cross-module inlining.
Mostly, the variant let the run-time system to retain a copy
of the bytecode while JITting (and dropping the bytecode of)
the main variant, but it may be different from the main variant
in other ways that make it better for inlining (such a less loop
unrolling).

original commit: 779b419c03
2011-11-30 07:39:36 -07:00
Matthew Flatt
7d7888d2ba fix compiler bug related to lifting and unbox flonums
As variables are dropped for lifted functions, the bitmap
for flonum closure variables was not shifted down by the
number of dropped variables.

Closes PR 12259

original commit: 7680adf486
2011-10-05 19:25:59 -06:00
Matthew Flatt
701a815db1 remove obsolete and unused Racket-to-C compiler
Removes `raco ctool -e/-c', `mzc -e/-c', `compile-extensions',
`compile-extensions-to-c', `compile-c-extensions', `compiler/cffi',
`compiler/comp-unit', `compiler:inner^', and most options in
`compiler/option'.

original commit: 0ab6637539
2011-09-20 15:26:39 -06:00
Kevin Tew
9f5362d806 Fix pr 12205 pass --disable-inline and --vv options through to parallel make
original commit: 099e89a297
2011-09-20 11:10:56 -06:00
Eli Barzilay
569f5e20a9 Some selective #:when (not ...)' -> #:unless ...'.
original commit: 623c7493ed
2011-09-16 10:48:18 -04:00
Matthew Flatt
c626b6fc7c add ++aux' flag to raco exe'
original commit: ca0d7b5ef4
2011-09-09 17:03:18 -06:00
Matthew Flatt
c663b1e957 fix demod for `begin-for-syntax' changes
original commit: b1eab296f4
2011-09-08 19:19:14 -06:00
Matthew Flatt
278f090e83 generalized `begin-for-syntax'
original commit: d3c56c9f13
2011-09-08 14:06:00 -06:00
Robby Findler
1161087456 remove extraneous path->string conversion
original commit: bb71539233
2011-09-05 08:30:48 -05:00
Matthew Flatt
d622961559 change `raco exe' to disable collection lookup by default
original commit: ecc058de4a
2011-08-25 09:15:30 -06:00
Matthew Flatt
dd20d04fff add `raco unpack'
Although the ".plt" format is going to be replaced, the format is
currently viable for distributing collections, and I have wanted
a raw `unpack' command for a while. It was useful today to fix
problems with `raco pack' and collection links.

original commit: 2dbaa45e1b
2011-08-24 20:08:18 -06:00
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
Matthew Flatt
eec721ff4c generalize #%variable-reference' and add variable-reference-constant?'
Use the new functions to make the expansion of keyword applications
to known procedure work  with mutation.

original commit: 5352d670c4
2011-08-09 16:33:17 -06:00
Matthew Flatt
eaed2b9eaf fix compiler/zo-parse for sequence splice
Merge to 5.1.2

original commit: 42f41d868a
2011-07-22 22:19:58 -04:00
Matthew Flatt
481f10a622 fix zo-parse of rename tables
original commit: 07a9cdd2a8
2011-07-13 10:45:19 -06:00
Matthew Flatt
32d8828ab5 improve decompiler handling of syntax object
original commit: 5e49e0adea
2011-07-08 06:22:40 -06:00
Matthew Flatt
1f9a6339e4 fix decompile of define-values-for-syntax
original commit: 5bc8b67eba
2011-07-07 07:25:48 -06:00
Eli Barzilay
2f65de9812 ".ss" -> ".rkt" scan done.
original commit: 3157955d40
2011-07-02 10:37:53 -04:00
Matthew Flatt
b5181ff032 adapt demodularizer to `compiler/zo-struct' change
original commit: 98740390fa
2011-07-01 22:46:20 -06:00
Matthew Flatt
ae33722071 fix `compiler/zo-parse' & co.
original commit: 69ad39d45c
2011-06-30 08:24:41 -06:00
Eli Barzilay
f90858601d A long overdue scan to eliminate files without terminating newlines.
(DrRacket should really do that.)

original commit: 40124a0619
2011-06-28 02:01:41 -04:00
Eli Barzilay
1ca7b10829 Fix "zo-parse.rkt" wrt the inclusion of `identity' in mzlib/etc, and
switch to racket (making `begin-with-definitions' redundant).

original commit: fc1b974cd2
2011-06-07 13:06:13 -04:00