Commit Graph

3229 Commits

Author SHA1 Message Date
Matthew Flatt
8d0d481d63 rebuild Mac x86 libraries to work with 10.4
Merge to 5.1.2
(cherry picked from commit 0860e62bfa)
2011-07-14 17:23:49 -04:00
Vincent St-Amour
0751111011 Fix jitting of real->double-flonum.
Merge to 5.1.2.
(cherry picked from commit 09b6616bfa)
2011-07-11 23:13:42 -04:00
Vincent St-Amour
cef91e1527 Revert "Add real->double-flonum to the JIT."
This reverts commit 2afff3d210.

This commit caused real->double-flonum to have a different behavior
when jitted as opposed to interpreted, and caused real->single-flonum
to break in some cases.

Merge to 5.1.2.
(cherry picked from commit 7dfe1f636f)
2011-07-11 23:13:35 -04:00
Matthew Flatt
036f7bec06 fix JIT problem that can break futures
A recent (weeks-old) JIT change set one of a function's code
 pointers to NULL to indicate that JIT-compilation of the
 function is in progress, but that breaks futures. Set the
 code pointer to a different not-yet-ready function, instead.

 Merge to 5.1.2

 Closes PR 12037
(cherry picked from commit 09eab9c3eb)
2011-07-11 23:13:31 -04:00
Matthew Flatt
94770d3a08 fix hash-ref' bugs on immutable eq?'-based tables
There were two:
   * new: after finding a hash code, the key wasn't
          always checked to be `eq?' to the desired key
   * old: the hash code wan't downshifted by 2, so
          changes in the low two bits (like when a pair
          is determined to start a list) could break
          lookup

 Merge to 5.1.2
(cherry picked from commit e765231dad)
2011-07-11 21:30:11 -04:00
Eli Barzilay
bc607e96e9 New Racket version 5.1.1.900. 2011-07-11 15:03:05 -04:00
Matthew Flatt
2b05b96b50 fix dependency
(cherry picked from commit 50bd06af9a)
2011-07-11 14:56:12 -04:00
Matthew Flatt
7fc99aa0b3 make weak taint table actually weak
(cherry picked from commit 4392ab7636)
2011-07-11 14:54:57 -04:00
Matthew Flatt
06f42651f5 optimizer repair; `unsafe-c{a,d}r' can be dropped
(cherry picked from commit 848bba80a3)
2011-07-11 14:54:49 -04:00
Ryan Culpepper
5ed722e144 Alpha version number for the v5.1.2 release 2011-07-07 23:37:24 -06:00
Kevin Tew
8128603b9b Fix non-places build 2011-07-07 17:14:01 -06:00
Kevin Tew
8ed62b715b Fix place-channel place-object race condition 2011-07-07 17:14:00 -06:00
Vincent St-Amour
3b33ed8c81 Abstract out magic numbers in the JIT. 2011-07-07 18:13:50 -04:00
Kevin Tew
68d49e9f59 Add assertions to place-channel tests 2011-07-07 12:38:20 -06:00
Vincent St-Amour
2afff3d210 Add real->double-flonum to the JIT. 2011-07-07 12:04:24 -04:00
Matthew Flatt
9ba6beacf5 fix non-futures, non-places build 2011-07-07 07:25:48 -06:00
Matthew Flatt
62a17da060 JIT-inline list-ref' and list-tail' 2011-07-07 07:25:48 -06:00
Matthew Flatt
a77a2fb3e1 JIT-inline all of the `cXr's 2011-07-07 07:25:48 -06:00
Matthew Flatt
6f9c197b96 avoid compiler warnings in --disable-places mode 2011-07-07 07:25:48 -06:00
Matthew Flatt
0c605acaf4 string allocation tweak 2011-07-07 07:25:47 -06:00
Matthew Flatt
2769fdd311 specialize "slow" `unsafe-vector*-ref', etc. after all
based on Vincent's patch
2011-07-07 07:25:47 -06:00
Matthew Flatt
f93b404dbd PPC JIT repairs 2011-07-07 06:54:55 -06:00
Eli Barzilay
380b6a8440 New Racket version 5.1.1.9. 2011-07-07 03:50:15 -04:00
Matthew Flatt
8cd1e9ff81 fix JIT support for property accessor with failure argument 2011-07-06 17:10:40 -06:00
Matthew Flatt
63ae1cabc4 reliably clear signal_handle when a place ends 2011-07-06 15:54:11 -06:00
Matthew Flatt
79d5572153 register place async channel wakeup_signal with GC 2011-07-06 15:54:11 -06:00
Matthew Flatt
6b4b95c569 fix `unsafe-struct-{ref,set}' for chaperones 2011-07-06 15:08:41 -06:00
Matthew Flatt
5b0fd72f7a note an implementation rationale 2011-07-06 15:01:10 -06:00
Kevin Tew
afca6ad64a Reduce initial memory footprint 2011-07-06 14:43:56 -06:00
Matthew Flatt
bd65218842 fix inconsistent version declaration 2011-07-06 14:02:19 -06:00
Matthew Flatt
8f6fd7060f speed up `hash-ref'
by trimming the common-case path through a combination of small
 JIT and function changes
2011-07-06 14:00:51 -06:00
Kevin Tew
36e3679854 Scheme_Place_Object is now under gc control, multiple places can wait on a place channel. 2011-07-06 13:27:50 -06:00
Matthew Flatt
5c2a9b2aaa improve a syntax-object resolution cache 2011-07-06 09:07:18 -06:00
Matthew Flatt
1daa2649f0 another fix for `vector-{ref,set!}' on chaperone/impersonator
--- fixes a81917a2692; drop this commit if that one is dropped
2011-07-05 06:29:32 -06:00
Matthew Flatt
ca2dd17dcb fix for `vector-{ref,set!}' on chaperone/impersonator on some platforms
--- fixes a81917a2692; drop this commit if that one is dropped
2011-07-04 18:04:38 -06:00
Matthew Flatt
a81917a269 JIT: faster path for `vector-{ref,set!}' on chaperone/impersonator
This commit probably should be removed from the v5.1.2 branch
 (after the branch is created).
2011-07-04 16:26:09 -06:00
Matthew Flatt
97d5e3fa02 win32: fix place-specific scheduling semaphore 2011-07-04 08:27:33 -06:00
Jay McCarthy
467833d4e7 Initializing flag to remove GCC error 2011-07-02 12:13:21 -07:00
Matthew Flatt
8aa4ff1b06 syntax taint repairs 2011-07-02 10:08:15 -06:00
Matthew Flatt
69434370cb allow fd 0 to be used as place signaling pipe 2011-07-01 15:04:39 -06:00
Matthew Flatt
e46a470f8d places fixes: Windows leaks, custodian force-exit, stdio interaction 2011-07-01 14:31:56 -06:00
Matthew Flatt
3078d5c494 clean up place exit handling
- don't crash on multiple kills or waits
 - allow the OS to reclaim the place thread when it exits on its own
2011-07-01 09:30:11 -06:00
Matthew Flatt
0f42552a0e place fd clean-ups
and better handling of a place-creation failure due to pieces
 at the OS layer
2011-07-01 09:30:10 -06:00
Eli Barzilay
faf74c789f New Racket version 5.1.1.8. 2011-07-01 03:50:21 -04:00
Matthew Flatt
835bbe2874 fix typo in "place.c" 2011-06-30 10:59:17 -06:00
Matthew Flatt
d4acf4f07a fix another problem with attempted overflow clean-up 2011-06-30 10:53:19 -06:00
Kevin Tew
c3059f7e82 place-dead-evt 2011-06-30 10:02:21 -06:00
Matthew Flatt
ae8bbaef90 fix attempt to clean up overflow checking 2011-06-30 09:55:55 -06:00
Matthew Flatt
37e4ea497b check for integer overflow in vector reader syntax
Closes PR 12008
2011-06-30 09:46:02 -06:00
Matthew Flatt
e9477c17b4 fix JIT-generated `apply-values' for chaperones
Closes PR 11981
2011-06-30 09:28:07 -06:00