Matthew Flatt
e9269f1c4a
optimize (let ([x (let~ ([y M]) N)]) P) to (let~ ([y M]) (let ([x N]) P))
...
which helps expose unboxing opportunities with multiple-value binding
2010-08-11 11:09:04 -06:00
Matthew Flatt
a6ec6a7e30
change bytecode optimizer's representation of `let'
...
- represent RHSes as before allocating stack positions
for bindings, instead of after, which makes certain
transformations simpler; this does not effect the
final bytecode form that's is saved in a ".zo"
2010-08-11 10:29:50 -06:00
Matthew Flatt
4d1e97ec8d
change start-atomic and end-atomic to disable breaks
2010-08-07 20:40:32 -05:00
Matthew Flatt
2696f3044c
distinguish reasons to wait on end of atomic mode
2010-08-07 20:40:25 -05:00
Matthew Flatt
01558aec5a
add way to constrain poll/select timeout from low-level evt
2010-08-07 19:30:46 -06:00
Matthew Flatt
f21864ee22
adjust atomic timeout handling to track atomic nesting
2010-08-07 19:30:40 -06:00
Matthew Flatt
df4da6bbff
try again to make gmp _EXTERN_INLINE consistent
2010-08-06 13:34:12 -06:00
Kevin Tew
35a65f90c2
Places: refactor place-channel use
2010-08-05 11:05:54 -06:00
Matthew Flatt
e9687b5cf6
fix little C-code problems that trigger clang errors/warnings
2010-08-05 06:25:44 -06:00
Kevin Tew
3744e224b7
Places: fix sending place channels over place channels
2010-08-04 13:23:00 -06:00
Matthew Flatt
be95805548
try to fix libatomic_ops inline asm
2010-08-04 13:16:51 -06:00
Matthew Flatt
e3320067a9
clean up gmp _EXTERN_INLINE problem
2010-08-04 12:50:24 -06:00
Kevin Tew
637a8d9f84
fix mzrt_thread_stub refcount
2010-08-04 10:45:10 -06:00
Kevin Tew
bb72d26b93
Places: fix prefab serialization
2010-08-04 10:45:09 -06:00
Kevin Tew
60f0d0b69c
Places: Fix symbol serialization
2010-08-04 10:45:09 -06:00
Kevin Tew
de11fd4351
initialize manual_unw
2010-08-04 10:45:09 -06:00
Matthew Flatt
9e71ccc1eb
consult RLIMIT_AS instead of RLIMIT_DATA for OS-imposed memory limit
2010-08-01 09:18:07 -06:00
Kevin Tew
c7926001ef
Places: fix prefab_struct_key
2010-07-29 09:14:17 -06:00
Matthew Flatt
79b782edad
adjust configure with --enable-sdk to force gcc 4.0 instead of 4.2
...
Merge to 5.0.1
2010-07-29 07:28:43 -06:00
Blake Johnson
599ffacd47
Fixing bug in C reader for hasheqv literals
2010-07-27 13:39:43 -06:00
Eli Barzilay
fcc15c4f1e
New Racket version 5.0.1.2.
2010-07-26 03:50:29 -04:00
Matthew Flatt
5f1aa418f3
add collection-file-path and splace collection trees at the file level
2010-07-25 11:01:09 -05:00
Matthew Flatt
fa68e23c37
add pen and cap support to pen-list%
2010-07-21 15:50:22 -06:00
Matthew Flatt
9fc9d9582e
fix heuristic for caching stack traces
2010-07-21 15:50:22 -06:00
Matthew Flatt
5cfd52d224
fix collison of draw-bitmap with GC bitmap under Windows; merge to 5.0.1
2010-07-20 21:19:29 -06:00
Matthew Flatt
066e6f0ebb
remove autom4te.cache, which is generated by autoconf
...
Merge to 5.0.1
2010-07-20 19:27:38 -06:00
Matthew Flatt
816f66f4c5
fix stack-trace clean-up code for x86_64
...
Merge to 5.0.1
2010-07-20 19:07:53 -06:00
Matthew Flatt
66ffb43cb4
Solaris x86_64 config
...
Merge to 5.0.1
2010-07-20 19:07:52 -06:00
Matthew Flatt
68c49a2228
avoid gmake-ism in racket makefile
2010-07-20 19:07:52 -06:00
Matthew Flatt
a2f3dad4f0
fix exit status of signal-terminated subprocess
...
Closes PR 10932
Merge to 5.0.1
2010-07-20 10:30:03 -06:00
Matthew Flatt
167d048773
fix problem with radio buttons under X11
...
Closes PR 10951
Marge to 5.0.1
2010-07-20 10:24:46 -06:00
Matthew Flatt
7cbe584fbc
fix mistakes related to -X and `make install'
...
Merge to 5.0.1
2010-07-20 07:28:07 -06:00
Matthew Flatt
207114e7e9
add scheme_register_process_global() to C API
2010-07-19 09:23:26 -06:00
Matthew Flatt
b85934d2d4
extend C API to abort/capture cont skipping dynamic-winds
2010-07-19 09:23:21 -06:00
Matthew Flatt
5517909a5c
move code-page free list declaration to use
2010-07-19 09:18:17 -06:00
Matthew Flatt
7a8efb446e
fix MIPS bignum config and implementation
...
--- includes a fix for gmp with long long configuration,
but that's now disabled for MIPS to keep things
simpler
2010-07-19 09:18:17 -06:00
Matthew Flatt
31fc380e39
reduce the cost of nested full continuations
...
while allowing full continuations to be used to escape
across a continuation barrier
2010-07-16 20:39:54 -06:00
Eli Barzilay
68e62bdc67
New Racket version 5.0.1.1.
2010-07-16 03:50:15 -04:00
Eli Barzilay
c733accd33
Post-release version for the v5.0.1 release
2010-07-15 17:22:23 -04:00
Matthew Flatt
0c6daba7ee
Makefile correction related to disabling the FFI
2010-07-14 11:30:59 -06:00
Matthew Flatt
43c2d351df
fix two more validator functions after prototype change
2010-07-14 10:06:56 -06:00
Casey Klein
f62b827fa9
Propagates bytecode verifier's result_ignored flag into boxenv bodies
2010-07-14 09:52:50 -05:00
Matthew Flatt
15aeee98e9
fix some file exe permissions
2010-07-14 08:04:20 -06:00
Matthew Flatt
a530109d17
adjust libffi hacks that avoid warnings
2010-07-14 06:24:49 -06:00
Matthew Flatt
90b586365f
upgrade to latest libffi from git repo (between v3.0.9 and v3.0.10)
2010-07-13 21:12:59 -06:00
Matthew Flatt
a306a646e6
fix build for disabled FFI
2010-07-13 16:07:03 -06:00
Matthew Flatt
9743fd9381
fix mips preprocessor-decision mismatch
2010-07-13 16:07:03 -06:00
Ryan Culpepper
b8bf5c571a
macro-stepper: add support for #%stratified-body
2010-07-13 09:22:51 -06:00
Matthew Flatt
818ac8f712
fix bug in new int-def parsing
2010-07-12 18:58:38 -06:00
Matthew Flatt
768a3721f9
add async-apply support to FFI
2010-07-11 14:59:40 -06:00
Matthew Flatt
49ad309630
allow full continuations to escape past a continuation barrier
2010-07-10 07:31:58 -06:00
Matthew Flatt
fe0609673c
clean up
2010-07-09 06:44:33 -06:00
Eli Barzilay
e06b2db4c7
New Racket version 5.0.0.9.
2010-07-09 03:50:26 -04:00
Matthew Flatt
2a0bc393c0
fix bug in GIF and BMP loading for X
2010-07-08 19:40:21 -06:00
Matthew Flatt
c7c8f56e11
fix validation of module .zo exp-time content, and fix zo-marshal
2010-07-08 17:17:42 -06:00
Matthew Flatt
0eeb18f4d8
Improve the bytecode optimizer's ability to simplify `letrec's
...
to smaller `letrec' groups or even `let*'.
The goal of the change is to avoid performance surprises
when using internal definitions, especially when mixing
experessions with definitions.
It's a somewhat scary change. Besides the new transformation,
the optimizer pass's coordinate system for `letrec' (and sometimes
`let*') bindings changed.
No standard benchmarks were harmed during the making of this
optimization. (None were improved, either.)
2010-07-08 13:43:40 -06:00
Eli Barzilay
56077a1386
New Racket version 5.0.0.8.
2010-07-08 03:50:27 -04:00
Matthew Flatt
519d1ef8d1
make compiler slightly smarter about 0-value letrec-values bindings
...
which corresponds to code generated from experession that are
mixed with internal definitions
2010-07-07 13:56:16 -06:00
Matthew Flatt
54216b5ced
internal-definition contexts allow expressions mixed with definitions
...
while the new `#%stratified-body' form provides access to the old
convention
2010-07-07 13:56:16 -06:00
Matthew Flatt
63ec520885
fix problem with Windows pipe writing
2010-07-06 10:59:16 -06:00
Kevin Tew
c9e84f9f67
[Parallel-Build] remove -u, -j 1 is uniprocessor, SETUP_OPTIONTS => PLT_SETUP_OPTIONS
2010-07-06 10:07:40 -06:00
Matthew Flatt
763a010fd3
allow deletion of open files in Windows
2010-07-06 07:02:14 -06:00
Matthew Flatt
96a6f56572
fix problem sharing Windows file handles to subprocess
2010-07-06 06:49:59 -06:00
Matthew Flatt
77c615898a
more gitignores for Windows
2010-07-06 06:14:56 -06:00
Matthew Flatt
1e40e72652
fix non-futures build
2010-07-06 06:05:47 -06:00
Matthew Flatt
43e9e930d8
fix Windows narrow-path uses
2010-07-06 06:00:10 -06:00
Eli Barzilay
c4cb424700
New Racket version 5.0.0.7.
2010-07-06 03:41:53 -04:00
Matthew Flatt
6915250300
fix memory leak
2010-07-05 18:50:10 -06:00
Matthew Flatt
a29c165985
fix #ifdefs for `processor-count', especially for Windows
2010-07-05 18:17:58 -06:00
Matthew Flatt
04fa6c6acd
add `subprocess-group-enabled' for process-group support
...
and fix problems with places and subprocesses
and fix some mzrt thread setup and teardown issues
2010-07-05 17:51:26 -06:00
Kevin Tew
c968f45d85
Parallel build by default
2010-07-05 11:58:52 -06:00
Eli Barzilay
1033684dbb
New Racket version 5.0.0.6.
2010-07-05 03:50:24 -04:00
Matthew Flatt
5c2ae50e45
add current-subprocess-custodian-mode
2010-07-04 12:42:25 -06:00
Matthew Flatt
fb730cb1c2
custodian box as synchronizable event
2010-07-04 10:42:38 -06:00
Matthew Flatt
608e228530
GC repirs for non-places (and non-future) and backtrace support
...
Repairs provided by Dmitry Dzhus
2010-07-04 07:45:34 -06:00
Matthew Flatt
99c5fea2fd
export scheme_stx_extract_marks() from the C API, for now
...
related to PR 11014
2010-07-03 10:05:47 -06:00
Eli Barzilay
0ebb72ac50
New Racket version 5.0.0.5.
2010-07-03 03:50:26 -04:00
Matthew Flatt
ca48eff84c
fix JIT bug specific to x86_64 and PPC
2010-07-02 18:52:27 -06:00
Matthew Flatt
439bc0a293
add flreal-part',
flimag-part', `make-flrectangular', and unsafe variants
2010-07-02 16:08:15 -06:00
Matthew Flatt
eef7a8ba9d
JIT inline real-part, imag-part, make-rectangular
2010-07-02 16:08:14 -06:00
Matthew Flatt
491ab3c12b
expose internal display/write/print-limiting functionality via `printf'
...
addition of ~.
2010-07-02 16:08:14 -06:00
Eli Barzilay
8fc7f93798
New Racket version 5.0.0.4.
2010-07-02 03:50:25 -04:00
Matthew Flatt
3de7dbd2fd
add chaperone-evt
2010-07-01 14:59:01 -06:00
Matthew Flatt
459e4fba82
fix C warnings due to function prototype mismatches
2010-07-01 08:52:12 -06:00
Eli Barzilay
e05cbae2af
New Racket version 5.0.0.3.
2010-07-01 03:50:26 -04:00
Matthew Flatt
159daa43aa
fix bytecode validator to accept letrec-bound flonum-consuming functions
...
Closes PR 11009
2010-06-30 22:03:36 -06:00
Matthew Flatt
3686875440
set configuration in executable before creating the initial environment
...
which is needed for correct allocation with places
2010-06-30 15:49:00 -06:00
Matthew Flatt
128d86da1f
throw out attempt at more laziness in phase instantiation
...
keep some related refactoring, though
2010-06-30 10:40:03 -06:00
Matthew Flatt
47eb8ea815
add `identifier-prune-to-source-module' and use it in contract implementation
...
reduces DrRacket's initial footprint by 20-25% --- back to the v5.0 level
2010-06-30 10:40:03 -06:00
Matthew Flatt
459dff9f37
more laziness in instantiation of higher phases
2010-06-30 10:40:02 -06:00
Matthew Flatt
788a144118
convert (car (let .... (list X ....))) to (let ... X), etc.
2010-06-30 10:40:02 -06:00
Eli Barzilay
f05eb775eb
New Racket version 5.0.0.2.
2010-06-29 03:50:23 -04:00
Matthew Flatt
47c7c1a27b
JIT support for inexact->exact', add
unsafe-fl->fx', etc.
2010-06-28 15:57:49 -06:00
Matthew Flatt
1254c54852
fix compiler bug related to `case-lambda'
...
Closes PR 10987
2010-06-27 11:02:26 -06:00
Matthew Flatt
07f567fcb3
fix arity handlign and reporting for chaperoned procedures
2010-06-27 08:59:58 -06:00
Matthew Flatt
22d8ff470c
fix problem with JIT and safe fl ops
...
Closes PR 10982
2010-06-26 14:22:40 -06:00
Matthew Flatt
a9c058afb9
avoid unused-result gcc warnings
2010-06-25 17:48:43 -06:00
Matthew Flatt
439ef9bffb
fix another bytecode-validation bug found by Casey
2010-06-25 17:48:43 -06:00
Matthew Flatt
0791b453bf
fix JIT validator in no-slot-reuse mode
2010-06-25 08:57:33 -06:00
Matthew Flatt
09d70be7ae
always keep stack aligned to 16 bytes in JITted code on x86
2010-06-25 07:17:27 -06:00