Commit Graph

4220 Commits

Author SHA1 Message Date
Matthew Flatt
376a673a0c use internal `equal?'-based table in atomic mode
for kill safety
2011-08-09 13:10:41 -06:00
Kevin Tew
22ac1f8c54 Places - check for inter-place pointers 2011-08-08 10:58:22 -06:00
Matthew Flatt
2d4e14dca8 fix a kill-safety problem in the module name resolver 2011-08-06 08:25:36 -06:00
Matthew Flatt
84b9cf6b90 fix non-place-friendly parts of finalizer support 2011-08-04 06:57:32 -06:00
Matthew Flatt
3b8d00029e fix `namespace-attach-module{-declaration}' problem
Closes PR 12048
2011-08-02 17:06:12 -06:00
Matthew Flatt
9a5bae277a set self modidx on primitive modules
which fixes a crash related to `module->namespace'
2011-08-01 15:16:04 -06:00
Matthew Flatt
ec27cbfd90 fix problems related to futures and is-list flags on pairs
Although a future thread used an atomic compare-and-swap to
set "is a list" or "not a list" flag on pairs via the
JIT-implemented `list?', the hashing function in the runtime
thread did not; as a result, it might be possible to lose
a hash code due to cache inconsistency (although I'm not
sure it's actually possible, and I couldn't trigger a problem
with a test). Most of the changes are related to using
an atomic compare-and-swap when setting a hash code, as
well as clean-ups to related code. Processor-count tests
avoid using atomic compare-and-swap on uniprocessors, which
might not support the relevant machine instructions.

As significantly, the compare-and-swap operation for the
JIT-implemented `list?' did not actually set flags on
a pair that has a hash code. This could lead to `list?'
tests that were not constant time (but only if the relevant
pair's `eq?' hash code had been used previously).
2011-07-31 04:43:24 -06:00
Matthew Flatt
e6b4d547c9 fix problem with initialization of tag name array
The bug to lead to a crash from `(dump-memory-stats)'

Mrege to 5.1.2
2011-07-27 15:26:48 +01:00
Matthew Flatt
7123996b30 change `eval-jit-enabled' initialization
to reflect whether JIT compilation is supported by the build
(i.e., set it to #f initially when the JIT is not supported)
2011-07-27 07:55:05 +01:00
James Swaine
783ee2cf88 Add convenience macros for raising exceptions in C functions which may run on future threads 2011-07-26 16:20:35 -05:00
Matthew Flatt
73b16c8578 don't constant-fold an fx operation if the result is non-fx
In fact, the result must be an fx on all platforms, since
compilation should be platform-independent.
2011-07-25 11:30:23 -04:00
Matthew Flatt
cab8e5e0e2 JIT tweaks for `unsafe-{s,u}16vector-set!'
by making better use of the code that's in place for other
similar operations
2011-07-25 11:30:22 -04:00
Matthew Flatt
c9d4e0fb8c win32: fix `copy-file' handling of file-exists error
The specific error reported by CopyFileW doesn't seem
to be documented. It's unclear whether Racket's old test
for ERROR_EXISTS_ALREADY was the wrong choice (as opposed
to ERROR_FILE_EXISTS) or whether some Windows versions
use it; we test for both for now.

Also, improve error reporting when an errno or
GetLastError() value is available.

Closes PR 12074

Merge to 5.1.2
2011-07-23 22:15:18 -04:00
Matthew Flatt
530bb1b9ba code-inspector fix for top-level code from bytecode
Merge to 5.1.2
2011-07-20 14:25:24 -06:00
Matthew Flatt
0d2b08f053 fix validation of top-level define-{syntaxes,values-for-syntax}
(Only appears in bytecode for non-module code.)

Merge to 5.1.2
2011-07-20 14:08:30 -06:00
Matthew Flatt
5b8a892fbb fix bug in .zo writing
The bug showed up in the "racket/embed.rktl" test.

Merge to 5.1.2
2011-07-20 13:57:52 -06:00
Matthew Flatt
30174b3c81 another try at Mac OS X 10.4 x86 libraries
Merge to 5.1.2
2011-07-20 13:26:48 -06:00
Matthew Flatt
d9ae1d048d fix optimizer bug related to `case-lambda' at module level
The bug triggered a crash on ARM, and probably doesn't
affect other platforms, but I'm not competely sure.

Merge to 5.1.2
2011-07-19 15:27:50 -06:00
Matthew Flatt
5efe7001d6 fix "block cache" layer to handle allocation failure 2011-07-17 20:08:26 -06:00
Matthew Flatt
92671ab3ea fix source name of built-in modules
Closes PR 12051

 Merge to 5.1.2
2011-07-16 21:42:57 -06:00
Matthew Flatt
c4b820e5c5 make `namespace->module' fail on kernel modules for the right reason 2011-07-16 21:36:41 -06:00
Matthew Flatt
701c9666d6 fix printing of namespace with places enabled
This commit goes with 62acb298bd.
2011-07-16 21:17:10 -06:00
Matthew Flatt
3f0914080b fix SGC
Merge to 5.1.2
2011-07-16 14:30:09 -06:00
Matthew Flatt
9ca07e7d65 minor code clarification 2011-07-16 14:30:09 -06:00
Matthew Flatt
4307bcace5 fix taint behavior of some syntax operations
`syntax-local-get-shadower' and
 `syntax-make-delta-introducer' both taint their
 results when a given syntax object is tainted
2011-07-16 08:03:54 -06:00
Kevin Tew
bf4a8ad5c4 create hash codes for place shared objects 2011-07-15 13:06:07 -06:00
Matthew Flatt
62acb298bd places: fix printing of symbol resolved module paths 2011-07-14 21:32:48 -06:00
Matthew Flatt
1c4722eaee remove obsolete reference to '#%mred-kernel 2011-07-14 21:32:47 -06:00
James Swaine
32a3828a2e Made continuation-mark-set-first future-safe. Fixed a rarely occurring bug with lightweight continuation capture for futures. 2011-07-14 19:30:52 -06:00
Matthew Flatt
4d03ffb57d another JIT tweak 2011-07-14 17:07:18 -06:00
Matthew Flatt
825548f5dc tweak JIT to improve and slightly generalize register tracking 2011-07-14 17:07:18 -06:00
Matthew Flatt
87a6b850a7 more info on 10.4 support 2011-07-14 17:07:18 -06:00
Matthew Flatt
0860e62bfa rebuild Mac x86 libraries to work with 10.4
Merge to 5.1.2
2011-07-13 10:45:19 -06:00
Vincent St-Amour
09b6616bfa Fix jitting of real->double-flonum.
Merge to 5.1.2.
2011-07-11 14:38:02 -04:00
Vincent St-Amour
7dfe1f636f 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.
2011-07-11 13:54:06 -04:00
Matthew Flatt
09eab9c3eb 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
2011-07-11 07:01:41 -06:00
Eli Barzilay
ac139c5dcb New Racket version 5.1.2.3. 2011-07-11 03:50:16 -04:00
Matthew Flatt
cc6f3f69ab add `port-set-next-location!'; make prompt read handler use it
Closes PR 12035
2011-07-10 08:36:47 -06:00
Matthew Flatt
e765231dad 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
2011-07-09 20:12:59 -06:00
Matthew Flatt
5452a16479 fix arity check on `current-module-name-resolver' 2011-07-09 06:16:11 -06:00
Matthew Flatt
9e694ce5cb share modidx for module imported into multiple phases 2011-07-09 06:16:10 -06:00
Matthew Flatt
50bd06af9a fix dependency 2011-07-09 06:16:10 -06:00
Matthew Flatt
d49a1e1fa1 JIT-inline `path?' 2011-07-09 06:16:10 -06:00
Eli Barzilay
1ba2d85004 New Racket version 5.1.2.2. 2011-07-09 03:50:09 -04:00
Matthew Flatt
b98e1b189a change semantic of internal definitions
and `letrec-syntaxes+values' --- allowing `let' in place
 of `letrec', which in turn lets the compiler optimize
 away location allocation
2011-07-08 14:00:41 -06:00
Matthew Flatt
4392ab7636 make weak taint table actually weak 2011-07-08 06:28:43 -06:00
Matthew Flatt
0e95d49ddb allow more expression reordering, especially unsafe ops 2011-07-08 06:23:29 -06:00
Matthew Flatt
65b1a569a0 add `unsafe-list-{ref,set}'
Use the new functions in `syntax-case'; the benefit is small, and
 it's mostly useful as hint to the optimizer that the operation
 can be dropped if the result isn't used
2011-07-08 06:23:29 -06:00
Matthew Flatt
848bba80a3 optimizer repair; `unsafe-c{a,d}r' can be dropped 2011-07-08 06:22:40 -06:00
Eli Barzilay
4edbf125a9 New Racket version 5.1.2.1. 2011-07-08 03:50:19 -04:00
Ryan Culpepper
ed7495ce2a Post-release version for the v5.1.2 release 2011-07-07 23:37:55 -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
Matthew Flatt
b86e96cf90 fix optimizer bug that reordered past a mutable variable
Closes PR 11987
2011-06-30 09:17:42 -06:00
Matthew Flatt
737a3bd91a fix too-early large-allocation check
Closes PR 12000
2011-06-30 08:56:28 -06:00
Matthew Flatt
0025ff968d fix JIT bug
that caused incorrect compilation of a non-tail call as
 a self non-tail call (but why hasn't this deep and old bug caused
 more trouble over the years?)
2011-06-30 08:24:42 -06:00
Matthew Flatt
1af8cd07ad minor clean-up 2011-06-30 08:24:41 -06:00
Matthew Flatt
011b79180b fix another stx-vs-#f bug 2011-06-29 20:48:11 -06:00
Matthew Flatt
e16e36e49c fix problem pushing instantiation-time inspector 2011-06-29 20:21:40 -06:00
Eli Barzilay
01867f12b1 New Racket version 5.1.1.7. 2011-06-29 21:47:55 -04:00
Matthew Flatt
daa6f1aed3 fix #f misused as syntax object 2011-06-29 19:46:04 -06:00
Matthew Flatt
1160d3df62 remove syntax certificates; add syntax taints 2011-06-29 19:15:48 -06:00
Eli Barzilay
40124a0619 A long overdue scan to eliminate files without terminating newlines.
(DrRacket should really do that.)
2011-06-28 02:01:41 -04:00
Kevin Tew
d7785a3520 Add mark call for place->mref 2011-06-27 09:16:45 -06:00
Matthew Flatt
bba4d413e8 add usual prefix to configure flag report 2011-06-20 10:28:35 -06:00
Matthew Flatt
047b4b6072 note on cross-compilation 2011-06-20 06:50:59 -06:00
Matthew Flatt
5c9f1a487e 3m-only build fix 2011-06-20 06:50:58 -06:00
Matthew Flatt
56ee3049b2 switch configure' to use "$host_..." instead of uname'
to support cross compilation;
 the main risk of this change is that I might have some
 GNU canonical system names wrog, since they're different
 from `uname' results
2011-06-19 11:39:38 -06:00
Matthew Flatt
49d8274662 darwin ppc patch from libffi 2011-06-19 11:10:42 -06:00
Matthew Flatt
7448f21fa5 add --enable-racket=<path> to configure
to set the Racket executable to run when building and
 installing Racket
2011-06-19 10:39:18 -06:00
Matthew Flatt
dd700b8430 PPC repairs 2011-06-18 07:26:53 -06:00
Matthew Flatt
5a5800d513 place-specific low-level "sleep" function
to make racket/gui work right with places (running
 in just one of them) on Mac OS X
2011-06-17 17:03:21 -06:00
Matthew Flatt
8e5bfee99e remove "place_" prefix from static functions 2011-06-17 17:03:20 -06:00
Matthew Flatt
b1e47eba45 add `place-message-allowed?' and fix related problems
Closes PR 11983
2011-06-17 10:33:27 -06:00
Eli Barzilay
109fff2abe New Racket version 5.1.1.6. 2011-06-17 03:50:16 -04:00
Matthew Flatt
523cec90c6 fix JITted multi-valued `begin0' in a single-value context
and generate simpler code for constrained cases, including
 single-value contexts and ignored results

 Closes PR 11979
2011-06-16 18:16:02 -06:00
Matthew Flatt
56423f330e `procedure-arity-includes?' reports #f for keyword-requiring procs
by default; a new optional argument restores the old behavior
  (but the default behavior is consistent with the old docs and with
  the vast majority of existing uses)

 The implementation is ugly for performance reasons. A new primitive
  `prop:arity-incomplete' property determines when to return #f for
  `procedure-arity-includes?' in default mode. A nicer implementation
  would be to redefine `procedure-arity-includes?' at the kw-proc level,
  but the bytecode optimizer's and JIT's treatment of the built-in
  `procedure-arity-includes?' is important. The implementation choice
  could be revisited after cross-module inlining is implemented.

 Closes PR 11978
2011-06-16 12:36:16 -06:00
Matthew Flatt
83d002a9aa fix interaction of `port-commit-peeked' and port positions
--- includes a small hack to the `make-input-port' protocol
     to specially handle a byte-string result as "true"
     from the `commit' proc
2011-06-16 08:17:14 -06:00
Kevin Tew
939f0b1c0b rename place-dynamic to dynamic-place 2011-06-11 15:36:16 -06:00
Matthew Flatt
80c4396dc1 JIT-inline struct type property predicates and accessors 2011-06-11 08:35:34 -07:00
Kevin Tew
4ee71096e7 Places: a few more send receive to get put renames 2011-06-11 02:07:28 -06:00
Kevin Tew
4dff43d4c5 place-wait returns void for now 2011-06-11 02:07:28 -06:00
Kevin Tew
1473b7775f Places: rename place and place/anon 2011-06-10 11:07:01 -06:00
Kevin Tew
21f7109204 Places: rename send receive to put get 2011-06-09 23:48:55 -06:00
Kevin Tew
b6225f66a5 Fix mzrt_cas for GCC < 4.1 2011-06-04 14:32:22 -06:00
Kevin Tew
a4e72128af Remove unused atomic ops, use gcc intrinsic 2011-06-03 13:50:26 -06:00
Matthew Flatt
d74aa0c998 try to fix CAS for Mac OS X PPC 2011-06-02 16:45:45 -07:00
Matthew Flatt
b24c387dde add PLTDISABLEGC environment variable 2011-06-02 16:20:20 -07:00
Jose Lopes
84415dd4a9 Fixed bug that prevented from accessing ActiveX components that did not expose type information.
Signed-off-by: José Lopes <jose.lopes@ist.utl.pt>
2011-05-30 07:48:18 -06:00
Matthew Flatt
bbfeb85440 mak argument to `make-immutable-hash' optional 2011-05-30 07:38:57 -06:00
Matthew Flatt
f3e1cf10aa change `hash-count' to take the lock; fix docs 2011-05-30 07:38:57 -06:00
Matthew Flatt
9f1c2147be refine comment that is possibly misleading
on code that might not turn out to be useful
2011-05-30 07:38:57 -06:00
Matthew Flatt
5dfd17d0b9 linux: use /proc/self/maps to find precise stack base 2011-05-29 09:41:07 -06:00
Matthew Flatt
32522f1f68 fix mac non-futures, non-places build 2011-05-27 20:12:01 -06:00
Eli Barzilay
13b2adc18c Switch the license text from LGPLv2 to LGPLv2.1.
This makes it correspond to the license page we have on downloads that
talks about the "lesser" GPL rather than the "library" one.

Also, change the file name to have a more friendly .txt suffix, and add
some more responsible properties for things in doc/release-notes.
2011-05-27 18:09:55 -04:00
Matthew Flatt
b548bc563c fix timer thread double registration 2011-05-25 14:53:19 -06:00
Kevin Tew
8b334e1e1b Smaller stacks for green thread timers 2011-05-25 12:02:07 -06:00
Tony Garnock-Jones
7615c2a512 Implementation, documentation and tests for adding a failure-result to property accessor procedures. 2011-05-24 16:53:52 -04:00
Vincent St-Amour
d314331858 Added comments to atan. 2011-05-24 10:57:30 -04:00
Matthew Flatt
0aefb8d43c avoid `single' as a C variable name
because `single' is bound as a type in some Solaris header
2011-05-24 06:30:00 -06:00
Matthew Flatt
23777f291c avoid flock() under Solaris 2011-05-24 06:18:40 -06:00
Matthew Flatt
7060fa5b75 fix problems with `letrec' splitting and constant procedures 2011-05-19 15:15:01 -07:00
Kevin Tew
518f20142c 11930 bug fix: added missing scheme_seal_parameters call 2011-05-19 11:48:23 -06:00
Matthew Flatt
11fa781652 fix future-scheduling problem related to custodians 2011-05-16 18:43:46 -06:00
Matthew Flatt
ffbaaa3c3b kFreeBSD fix from David Bremner 2011-05-16 06:24:02 -06:00
Matthew Flatt
450c66d308 fix MysterX for places 2011-05-13 14:06:53 -06:00
Matthew Flatt
343568fd84 fix return type of scheme_get_place_table() 2011-05-13 14:06:52 -06:00
Matthew Flatt
a613e81fcd change protocol for extensions with places
- extension gets scheme_initialize() per-place
 - simplify allocation and fix locking for scheme_new_type()
 - better Inside docs on places
2011-05-13 14:06:51 -06:00
Matthew Flatt
0bb0f28506 fix non-places build (yet again) 2011-05-13 09:03:02 -06:00
Matthew Flatt
a96fe882f8 ffi: fix race condition in in-original-place support 2011-05-13 08:55:06 -06:00
Matthew Flatt
3c1cd700a1 fix finalization of place channels 2011-05-13 08:55:06 -06:00
Matthew Flatt
087d666f08 win32: fix timer-thread handling for places 2011-05-13 08:55:05 -06:00
Matthew Flatt
5f1cd1a381 implement mzrt_sleep() for Windows 2011-05-13 08:55:05 -06:00
Matthew Flatt
70a0b741b0 fix place-channel GC marker, plus a typo in mark-proc generator 2011-05-13 08:55:05 -06:00
Matthew Flatt
49aadc599a ffi: add `#:in-original-place?' to deal with thread-unsafe libs
and use it for Pango, which is not thread-safe at the C level
2011-05-13 08:55:04 -06:00
Kevin Tew
3ca3544a28 places: fixes from Matthew's code review of places 2011-05-12 21:22:20 -06:00
Kevin Tew
c9c02f3fb0 duplicate and cycle detection for places_deserialize_worker 2011-05-12 08:28:47 -06:00
Matthew Flatt
8492f7c90b fix symbol handling in long-message transfer
as well as stack-overflow handling
2011-05-11 15:04:59 -06:00
Matthew Flatt
88dea4fae9 places: fix problems with message receive 2011-05-11 10:37:29 -06:00
Matthew Flatt
11445a97e4 remove obsolete hash handling in places deep copy 2011-05-11 09:07:47 -06:00
Matthew Flatt
8672f32d94 fix SGC debug mode 2011-05-11 08:49:31 -06:00
Kevin Tew
edeab3a413 inline -> MZ_INLINE 2011-05-10 10:52:43 -06:00
Matthew Flatt
d8340c6e2e futures: fix bugs in handling args of captured continuations 2011-05-10 09:53:48 -06:00
Kevin Tew
a09a4edcc3 mz-gdbinit updates 2011-05-10 06:37:39 -06:00
Kevin Tew
85ef1e2153 Added gc mark and fixup support for scheme_serialized_symbol 2011-05-10 06:37:39 -06:00
Kevin Tew
94d92092a5 deep copy stack overflow check 2011-05-10 06:37:39 -06:00
Kevin Tew
940e4cce34 shutdown custodian and call atexit handlers at place exit 2011-05-10 06:37:39 -06:00
Matthew Flatt
5b2492eda6 places, creating a subprocess: reset SIGCHLD correctly 2011-05-09 07:27:05 -06:00
Matthew Flatt
a60bfe9b7f remove some obsolete Mac OS X compiler flags for gracket 2011-05-09 07:27:04 -06:00
Matthew Flatt
979ea867a5 experiment (unsuccessfully) with inlining heuristic
and minor code clean-up
2011-05-08 17:04:27 -06:00
Matthew Flatt
9188e36ef1 try to fix thread-local variables for Max OS X Lion 2011-05-08 08:00:46 -06:00
Matthew Flatt
695039626c fixes for non-JIT build 2011-05-08 06:26:04 -06:00
Matthew Flatt
09046b46dd split up mzmark output 2011-05-08 06:26:04 -06:00
Matthew Flatt
01193652b0 internal reorganization of bytecode compiler and other bytecode tasks
--- organize by task instead of (weakly) by bytecode form; source
 files are smaller with fewer global functions and datatypes
2011-05-08 06:26:04 -06:00
Matthew Flatt
240d95ada6 fix closure GC handling when closure is only half-formed 2011-05-06 09:20:56 -06:00
Eli Barzilay
503485b5a4 New Racket version 5.1.1.5. 2011-05-06 09:48:07 -04:00
Matthew Flatt
e9721058fb reorgnize datatypes of less common bytecode forms
removing a layer of indirection, and setting up
 for an internal reorganization of the compiler code
2011-05-06 06:56:23 -06:00
Matthew Flatt
047c21edb4 add missing Win64 library to get-libs script 2011-05-06 06:56:22 -06:00
Matthew Flatt
34b8dc249e fix documented contracts for path functions
and make `cleanse-path' work for any platform's paths
  while fixing `resolve-path' checking to disallow paths
  for other platforms
 Closes PR 11891
2011-05-04 11:40:01 -06:00
Matthew Flatt
086d582c0f fix module-code cache to key on `current-load-relative-directory'
since that parameter affects the way that code is read
2011-05-03 16:22:05 -06:00
Matthew Flatt
4ee24d1c21 fix non-places, non-futures build again 2011-05-03 16:04:59 -06:00
Matthew Flatt
a91d79201b fix potential bug in printing error message 2011-05-03 16:04:33 -06:00
Eli Barzilay
e2255e3f88 New Racket version 5.1.1.4. 2011-05-03 16:34:50 -04:00
Matthew Flatt
be524ade36 minor code clean-ups 2011-05-03 10:22:02 -06:00
Matthew Flatt
2ada6d0e89 break link to namespaces from from closures over top-/module-level vars
- the `lam' structure from `compiler/zo-struct' changed to include a
   `toplevel-map' field

 This change helps solve a finalization problem in `racket/draw',
 which in turn sigificantly reduces the peak memory use of `raco setup'
 during the doc-building phase (because some documents load `racket/draw'
 to render images, and multiple copies of `racket/draw' were retained
 before finalization was fixed).

 The change is an extreme way to solve a specific finalization
 problem, but it's a kind of space-safety improvement; space safety
 almost never matters, but when it does, then working around a lack of
 space safety is practically impossible. In this case, it's not clear
 how to otherwise solve the `racket/draw' finalization problem.

 The improvement doesn't change the representation of closures, but it
 requires special cooperation with the GC. All closures in a module
 continue to share the same array of globals (plus syntax objects);
 that is, instead of completely flat closures, Racket uses a two-level
 environment where top-/module-level variables are grouped
 together. The code half of a closure now records which
 top-/module-level variables the body code actually uses, and the mark
 phase of GC consults this information to retain only parts of the
 top-/module-level environment frame that are actually used by some
 closure (or all of the frame if it is accessible through some other
 route).  In other words, the GC supports a kind of "dependent
 reference" to an array that is indexed by positions into the array
 --- except that the code is more in the "Racket" directory instead of
 the "GC" directory, since it's so specific to the closure
 representation.
2011-05-03 06:57:49 -06:00
Matthew Flatt
6c1ec25016 win32: fix page counting in memory manager 2011-04-30 14:02:20 -06:00
Matthew Flatt
68d235378f places: trigger GC after many message pages adopted 2011-04-30 14:01:55 -06:00
Matthew Flatt
4377d88e86 win32: increase stack size to 8 MB
and double safety margin for Win64
2011-04-30 11:12:04 -06:00
Matthew Flatt
ddbb3b02a1 win32 places: make break-signal semaphore place-local 2011-04-30 07:42:17 -06:00
Matthew Flatt
b5f86a26e6 fixes for kFreeBSD 2011-04-29 01:24:38 -06:00
Matthew Flatt
030eb185bc fix non-futures, non-places build 2011-04-28 19:22:10 -06:00
Matthew Flatt
ddc9213fbb allocate shared JIT code on pages shared by places 2011-04-28 10:16:35 -06:00
Matthew Flatt
651655f7bc fix memory counting on orphaned message pages 2011-04-28 09:53:29 -06:00
Matthew Flatt
9f50228db8 fix #include for fpsetmask() 2011-04-28 09:16:57 -06:00
Matthew Flatt
3dc38f25ee adjust GC logging, include JIT pages size 2011-04-28 07:43:42 -06:00
Matthew Flatt
aaf74636c2 another __FreeBSD_kernel__ fix 2011-04-28 06:58:14 -06:00
Matthew Flatt
7648000608 fix alloc_cache page counting 2011-04-28 06:51:36 -06:00
Matthew Flatt
5114f5973c remove unneeded places prefab-key conversions
(second try)
2011-04-28 06:35:33 -06:00
Kevin Tew
1689ccee47 Fix places dying. 2011-04-27 21:30:37 -06:00
Kevin Tew
5a01e9ddb8 Revert "remove unneeded places prefab-key conversions"
Well try again tomorrow to clean this up.

This reverts commit bd1c47cce1.
2011-04-27 20:18:15 -06:00
Matthew Flatt
5881005e18 tune GC parameter 2011-04-27 19:02:08 -06:00
Matthew Flatt
9cf7f88606 fix `procedure-arity-includes?' for non-futures, non-places builds 2011-04-27 14:57:16 -06:00
Matthew Flatt
0e229529c0 JIT-inline `procedure-arity-includes?' 2011-04-27 14:10:21 -06:00
Kevin Tew
d3b014ba42 [Places] copy pair flags 2011-04-27 11:50:44 -06:00
Matthew Flatt
bd1c47cce1 remove unneeded places prefab-key conversions 2011-04-27 11:03:22 -06:00
Matthew Flatt
a2e3116494 fix code page unchaining 2011-04-26 19:35:12 -06:00
Matthew Flatt
50509c10dc free JIT & FFI code pages when a place exits 2011-04-26 19:21:14 -06:00
Matthew Flatt
d28d42a46f fix validator bug (to allow flonum-consuming proc to be cleared)
Closes PR 11879
2011-04-26 19:21:14 -06:00
Kevin Tew
a589ea42b6 [Places] added place-break primitive 2011-04-26 18:41:19 -06:00
Matthew Flatt
8679afed60 clean up C part of build
- no more attempt to support places with the Boehm GC
 - no more libatomic (which was for places + Boehm GC)
 - remove unsupported configuration options
 - strip Racket-specific configure options before libffi configure
 - port two leftover Perl scripts to Racket scripts
2011-04-26 17:14:55 -06:00
Matthew Flatt
604960f5f5 places: re-enable (and re-ignore) SIGCHLD in a fork()ed process
Relevant to PR 11877
2011-04-26 11:12:32 -06:00
Matthew Flatt
40090307c1 Boehm GC: remove some obsolete customization 2011-04-25 15:50:41 -06:00
Matthew Flatt
5ae4b00168 fix CGC ephemeron bug
Merge to 5.1.1
2011-04-25 15:50:41 -06:00
Matthew Flatt
e999e0666c minor code-format adjustment 2011-04-25 15:50:41 -06:00
Kevin Tew
f8d761226d Remove FIXME_LATER gcc attribute 2011-04-25 08:18:27 -06:00
Kevin Tew
fd93e502e1 keygen can be shared see comment 2011-04-25 08:18:26 -06:00
Kevin Tew
2c02d9ff8d Finish load_extension places FIXME_LATER 2011-04-25 08:18:23 -06:00
Kevin Tew
44bf21a907 make group_member_cache place local 2011-04-25 08:18:15 -06:00
Matthew Flatt
187e483204 fix inline `eqv?' (affects PPC) 2011-04-25 07:25:53 -06:00
Matthew Flatt
4aabaeb7af fix configure error that can cause CFLAGS to be ignored
Merge to 5.1.1
2011-04-24 19:11:57 -06:00
Matthew Flatt
ac5d4cd401 x86 JIT: keep call & ret paired
even for a non-tail call from native code to native code;
 this change provides huge performance improvements for
 some microbenchmarks
 Merge to 5.1.1
2011-04-24 16:46:04 -06:00
Matthew Flatt
ae714593cd JIT: shorter x86 code for type tests, further streamline loop wrapper
--- but it doesn't actually speed up the target `assq' function
2011-04-24 15:18:09 -06:00
Matthew Flatt
253aff3e16 fix cached-module lookup 2011-04-24 09:04:58 -06:00
Matthew Flatt
09dbfee792 kFreeBSD configuration fixes
and use "uconfig.h" for default configuration
2011-04-24 08:54:53 -06:00
Matthew Flatt
dd8bd1c137 fix prototype 2011-04-24 08:54:35 -06:00
Matthew Flatt
6078013e32 JIT improvement: more direct path through loop wrappers 2011-04-24 07:55:33 -06:00
Matthew Flatt
3dffd5fbe6 faster JIT-generated path to `equal?' when futures are enabled 2011-04-24 07:55:33 -06:00
Matthew Flatt
f4303cbef8 faster JITted path to `equal?' 2011-04-24 07:55:33 -06:00
Matthew Flatt
45d7635188 fix non-places build 2011-04-24 07:55:33 -06:00
Matthew Flatt
feac196a31 minor JIT back-end improvements to avoid redundant loads 2011-04-24 07:55:33 -06:00
Matthew Flatt
b1ac25023d allow additional arguments to `raise-mismatch-error'
because it's often useful to show more values, and a
 tail `raise-mismatch-error' instead of a nested `format'
 can avoid some safe-for-space work in the JIT output
2011-04-24 07:55:33 -06:00
Matthew Flatt
f54d977de1 JIT-inline `eqv?' 2011-04-24 07:55:32 -06:00
Matthew Flatt
b7639e5a15 clean up futures at place termination 2011-04-22 15:59:33 -06:00
Matthew Flatt
0754ad0114 safe-for-space repairs for functions with rest args 2011-04-22 15:59:33 -06:00
Kevin Tew
f4307c65a7 [Places] free mark stack when place terminates 2011-04-22 15:33:17 -06:00
Kevin Tew
dc2c16058b [Places] free alloc_cache and page_range on place termination 2011-04-22 12:20:09 -06:00
Kevin Tew
012868e491 [Places] free nursery on place termination 2011-04-22 12:20:04 -06:00
Matthew Flatt
3f9a4c49fa fix `#define's that are used in more configurations than originally 2011-04-21 19:34:07 -06:00
Matthew Flatt
c4dbbdfaf3 fix C declaration 2011-04-21 19:34:07 -06:00
Matthew Flatt
f761be02be fix logging for master GC 2011-04-21 19:34:07 -06:00
Kevin Tew
8b049bb2ff Missed old code removal during recent refactor 2011-04-21 18:16:47 -06:00
Kevin Tew
d197d39d2c [Places] free gcs when places terminate 2011-04-21 14:27:27 -06:00
Matthew Flatt
c280b19ee2 remove unused var 2011-04-21 11:45:34 -06:00
Matthew Flatt
5e24a6d37c improve logging related to GC and places 2011-04-21 11:42:20 -06:00
Kevin Tew
c00a85edf8 Free msg_memory when place channel is finalized 2011-04-21 11:20:53 -06:00
Kevin Tew
8e2c09ac2f Add finalizer for place-channel's mutexes 2011-04-21 11:20:53 -06:00
Kevin Tew
113918e85a Revert "disable places-by-default for now"
This reverts commit 8760d38a95.
2011-04-21 10:18:29 -06:00
Kevin Tew
b1cd60213f Test all allowed types in place messages 2011-04-21 06:14:27 -06:00
Matthew Flatt
8760d38a95 disable places-by-default for now
--- pending further investigation of memory consumption
2011-04-21 06:12:31 -06:00
Matthew Flatt
2177681336 remove leftover(?) place GC-switching code on prefab lookup 2011-04-20 21:13:21 -06:00
Matthew Flatt
275d4a7a05 future scheduling fix and tweak
- put an atomic action on the atomic queue, even if the future
   was locally suspended
 - try local allocation for a multiple-values buffer
2011-04-20 20:01:29 -06:00
Matthew Flatt
e9dd7580a8 win32: fix incorrectly shared path-conversion buffer 2011-04-20 12:25:48 -06:00
Matthew Flatt
231cf7db48 win32: create threads in the right way for C library 2011-04-20 11:25:15 -06:00
Matthew Flatt
714df5598c restore needed forcing of hash codes 2011-04-20 08:22:01 -06:00
Matthew Flatt
5969524bd4 remove debugging leftovers(?) 2011-04-20 07:37:12 -06:00
Matthew Flatt
e47c9a2f9d allow cyclic values over place channels 2011-04-20 07:21:10 -06:00
Matthew Flatt
e1fced4897 places: clean up bad-message reporting, simplify some code 2011-04-20 06:55:37 -06:00
Eli Barzilay
0d021aacd2 New Racket version 5.1.1.3. 2011-04-20 03:50:42 -04:00
Kevin Tew
4749ae9d8a Fix places message to correctly say place-channel-send, add support for
windows paths in place channels
2011-04-19 22:44:13 -06:00
Matthew Flatt
1932a453a8 enable inlining of calls to `case-lambda' procedures
which includes calls to procedures with optional (but no keyword)
 arguments
2011-04-19 21:28:14 -06:00
Kevin Tew
fbb3926e07 Fix drracket crash on mflatt field.rkt test 2011-04-19 13:00:35 -06:00
Kevin Tew
4fd6144e3d [Places] place are now turned on by default 2011-04-19 09:15:17 -06:00
Matthew Flatt
2032ec910f better error message for bad command-line argument 2011-04-19 07:00:45 -06:00
Kevin Tew
49c73d767b [Places] improve small message performance 2011-04-19 03:31:51 -06:00
Matthew Flatt
586478a241 fix `namespace-attach-module' at phases above 0
Closes PR 11863
 Merge to 5.1.1
2011-04-18 15:48:14 -06:00
Matthew Flatt
2fa35a2a5c fix bug in thread'-based implementation of place'
which is used when parallel places are unavailable
2011-04-18 13:06:03 -06:00
Matthew Flatt
0c1348ee03 fix module-code cache for non-futures, non-places build 2011-04-18 06:34:50 -06:00
Matthew Flatt
6b2219b9e5 write proper ELF section for Unix launchers/executables 2011-04-17 18:04:00 -06:00
Eli Barzilay
875385b8f7 New Racket version 5.1.1.2. 2011-04-17 03:50:20 -04:00
Matthew Flatt
2a5fe45c7a add `namespace-attach-module-declaration'
which creates a little more sharing than the automatic
 caching of modules, but only for a program that explicitly
 attaches module declarations to share
2011-04-16 13:25:57 -06:00
Matthew Flatt
97ce26b182 cache loaded compiled modules
using a SHA1 hash stored in the marshaled bytecode; this cache
 lowers the cost of sandboxes or other uses of multiple namespaces
 when the code inspector doesn't change; the caching is almost
 transparent, but an eval handler might be called with compiled
 code that cannot be written
2011-04-16 13:24:58 -06:00
Eli Barzilay
ea9e6ce73a New Racket version 5.1.1.1. 2011-04-16 14:13:13 -04:00
Ryan Culpepper
183780238d Post-release version for the v5.1.1 release 2011-04-16 08:20:01 -06:00
Matthew Flatt
b6efdff4ec configure: -lffi goes in LIBS, not LDFLAGS 2011-04-14 10:49:13 -06:00
Matthew Flatt
f6d185abab configure: use `pkg-config' for libffi 2011-04-13 11:00:23 -06:00
Matthew Flatt
efed709f69 improve error reporting when using exec 2011-04-13 11:00:23 -06:00
Matthew Flatt
8a2d5878bc minor hash tuning 2011-04-13 11:00:23 -06:00
Kevin Tew
9d55c6c202 [Places] windows fixes 2011-04-12 12:05:27 -06:00
Matthew Flatt
ace0faa50f fix `configure' typo 2011-04-11 06:33:16 -06:00
Matthew Flatt
75753e6891 make --disable-foreign build work, at least for plain `racket' 2011-04-10 19:58:04 -06:00
Matthew Flatt
ac71f6080e don't look for X11 headers and libs during configure 2011-04-10 19:37:59 -06:00
Matthew Flatt
f3c3bb4441 Use installed libffi, if any, instead of building own
and add --disable-libffi to get old, always-build behavior
2011-04-10 19:26:15 -06:00
Matthew Flatt
6b503fa947 fix non-futures build 2011-04-10 09:10:07 -06:00
Matthew Flatt
8f9b71d785 futures: revert a GC-allocation change
because the old way looks right after all
2011-04-10 09:10:06 -06:00
Matthew Flatt
857003378a futures: more bug fixes, make `touch' safe
- bug fixes are related to allocation and runstack space
 - a `touch' within a future can complete before the `touch'ing
   future is itself `touch'ed
 - also make `length' safe (and JIT-inlined)
2011-04-09 17:12:24 -06:00
Matthew Flatt
7f6b8597f3 futures: dynamically allocate worker-thread array
so that a machine with > 8 processors doesn't cause a crash
2011-04-08 19:49:50 -06:00
Matthew Flatt
1028c669b7 futures: move flag check under lock 2011-04-08 17:38:09 -06:00
Matthew Flatt
2dcd76f609 fix arity reporting for chaperoned procedures and some primitives
such as `for-each'
2011-04-08 07:54:41 -06:00
Matthew Flatt
3dda2492c2 fix subprocess bug with places 2011-04-08 07:10:08 -06:00
Eli Barzilay
f0d1b6b91a New Racket version 5.1.0.6. 2011-04-07 03:50:13 -04:00
Matthew Flatt
3bf0f800a7 futures: make `future' work in a future, overhaul logging, fix bugs 2011-04-06 17:40:44 -06:00
Matthew Flatt
974f24ae54 increase the runstack size for a future thread 2011-04-04 21:15:44 -06:00
Matthew Flatt
1641d07a42 cocoa: upgrade cairo binary to v1.10.2
plus one little patch from the cairo repo
2011-04-02 15:52:00 -06:00
Kevin Tew
26d7768d3d Rename place-channel-recv place-channel-receive 2011-03-31 13:36:40 -06:00
Kevin Tew
f000517d42 mk-gdbinit.rkt improvements 2011-03-31 12:59:28 -06:00
Kevin Tew
4feebef9ef stxobj.c init cleanup 2011-03-31 12:59:24 -06:00
Eli Barzilay
be95f7a501 New Racket version 5.1.0.5. 2011-03-31 03:50:07 -04:00
Matthew Flatt
f88621aec1 fix more shift-cache problems 2011-03-30 15:13:01 -06:00
Matthew Flatt
bbc5533938 Scribble: change the way `racketblock' etc. indent/inset works
- introduce 'code-inset style for nested blocks
 - use style instead of spaces for code indentation
 - sigplanconf adds vertical space around 'code-inset
 - more ...0 variants to compose better
2011-03-30 15:12:30 -06:00
Kevin Tew
a9572505d8 [Places] empty_self_modidx fix 2011-03-30 12:18:03 -06:00
Matthew Flatt
05b777d382 protect against empty -N command-line argument 2011-03-29 19:53:05 -06:00
Matthew Flatt
1788703a42 Linux: set OS process name to match -N argument or argv[0] 2011-03-29 11:02:06 -06:00
Kevin Tew
ef200b3e7e Linux signal handling debug code 2011-03-25 15:04:02 -06:00
Kevin Tew
40847f51b1 Linux places need more thread stack space 2011-03-25 15:04:02 -06:00
Kevin Tew
aa0f285efa [PLACES] variable-reference->module-source fix 2011-03-25 13:07:39 -06:00
Kevin Tew
7dc22bc0fe added scheme_place_check_for_killed prototype 2011-03-23 16:28:53 -06:00
Matthew Flatt
5f237dd5df remove unused local C variable 2011-03-20 13:02:51 -06:00
Matthew Flatt
dafb6742e2 try to fix JIT-buffer overflow error 2011-03-20 12:57:24 -06:00
Matthew Flatt
ed96b89c45 JIT-inline `list?' 2011-03-20 09:51:32 -06:00
Matthew Flatt
39ebb083cc split functions to reduce C compile time 2011-03-20 09:51:31 -06:00
Kevin Tew
ae8b326522 [Places] added place-kill 2011-03-18 15:06:11 -06:00
Kevin Tew
b8c779b059 Added char* casts to symbol -> byte string conversions 2011-03-18 15:06:11 -06:00
Vincent St-Amour
e9789c6697 Fix the 2-argument case of atan to conform to the documentation and
fix the documentation.
2011-03-17 13:10:19 -04:00
Kevin Tew
f7caad524b [Places] fix symbol -> byte string conversions 2011-03-17 09:58:23 -06:00
Matthew Flatt
ded23a4f75 fix PSMTabBarControl sizes again
- previous fix changed x86 instead of intended ppc line
2011-03-17 06:35:23 -06:00
Matthew Flatt
4b39efdee4 fix `syntax-local-bind-syntaxes' argument checking
Closes PR 11808
2011-03-16 06:36:48 -06:00
Matthew Flatt
056a3fb588 fix lib size for ppc-macosx 2011-03-15 16:16:48 -06:00
Matthew Flatt
b9c4bbae67 futures: limit parallelism via custodians
Closes PR 11682
2011-03-15 14:43:18 -06:00
Matthew Flatt
93e10989fd export scheme_on_demand_jit_code 2011-03-15 06:43:53 -06:00
Matthew Flatt
5d481c259b fix inexact number printing when LC_NUMERIC locale is not "C"
Relevant to PR 11802
2011-03-13 09:02:40 -06:00
Matthew Flatt
cf69cb2aff special treatment of void as 'inferred-name property
allows keyword-based application to hide temporary
 names that happen to be bound to procedure arguments
2011-03-13 09:02:39 -06:00
Eli Barzilay
02f6ef0ec0 New Racket version 5.1.0.4. 2011-03-12 03:50:18 -05:00
Matthew Flatt
a5a7076fe0 `file-or-directory-permissions': expose more info, add write mode
and add `user-read-bit', etc., to `racket/file'
2011-03-11 02:50:06 -06:00
Matthew Flatt
3249ca2ab8 cocoa: fix bug in PSMTabBarControl 2011-03-11 02:50:05 -06:00
Matthew Flatt
7679e91de3 win32: fix ffi-lib' for non-ASCII in ffi/unsafe' 2011-03-10 07:35:49 -07:00
James Swaine
f4cae46f14 Added fsemaphore logging via the FSEMA_LOGGING preprocessor flag. 2011-03-03 16:56:29 -06:00
Eli Barzilay
0b63012e9e New Racket version 5.1.0.3. 2011-03-01 03:50:15 -05:00
Matthew Flatt
9abe62d713 bump version to reflect changes in a built-in module's exports 2011-02-28 17:32:59 -07:00
Kevin Tew
eaebcf5fd6 [Places] fall back to threads 2011-02-28 16:03:05 -07:00
Kevin Tew
13d371fa5e Collapse GLOBAL_PRIMS 2011-02-28 16:03:05 -07:00
Matthew Flatt
733eab5805 fix 0-field prefab immutability flag
Closes PR 11777
2011-02-28 15:24:11 -07:00
Matthew Flatt
2482816d3d fix `configure' detection of getaddrinfo() 2011-02-27 16:55:04 -07:00
Matthew Flatt
be9f13011a fix `make clean' with --disable-foreign
Closes PR 11770
2011-02-25 06:57:48 -07:00
Matthew Flatt
b4056373be generalizations to `subprocess' & company
- allow byte strings in more places
  - allow stderr spec to be 'stdout to redirect stderr to stdout
 Closes PR 11711
2011-02-19 08:30:34 -07:00
Matthew Flatt
aacb98f51b PPC JIT fixup 2011-02-18 18:44:01 -07:00
Matthew Flatt
0e590d3a76 VS10 project fixup 2011-02-18 18:44:01 -07:00
Matthew Flatt
4b13dc0ba4 split jit.c into multiple files 2011-02-18 18:44:01 -07:00
Matthew Flatt
5249152743 partially clean up hash-code implementation 2011-02-18 18:44:01 -07:00
Matthew Flatt
7d94936b04 change representation of parameterizations
- slightly slower single extension of parameterization
 - faster repeated extension of parameterization
 - sometimes faster lookup of parameterization
 - simpler implementation (uses functional hash tables)
2011-02-18 18:44:01 -07:00
Matthew Flatt
6041833ac5 fsemaphore cleanup
- abstract over JIT inlining of fsemaphore operations
 - fix problems with non-parallel fsemaphores
 - adjust tests so they don't assume too much concurrency
 - clarify fsemaphore vs. semaphore in the docs
2011-02-18 09:55:01 -07:00
James Swaine
ca5c061a71 Fix fsemaphore-try-wait? so the sema's count is decremented. Make fsemaphore-wait and other futures-related functions cooperate with the GC better. 2011-02-16 21:14:14 -06:00
James Swaine
825a931ffa Fix MSVC compiler errors for fsemaphore code generation 2011-02-16 15:39:45 -06:00
Matthew Flatt
90b8296c8f fix minor problems that trigger C-compiler warnings 2011-02-16 13:19:56 -07:00
James Swaine
c6642de116 Added future semaphores (fsemaphores) 2011-02-15 23:27:03 -06:00
James Swaine
a98553f99b Merge branch 'master' of pltgit:plt 2011-02-15 22:58:08 -06:00
Kevin Tew
156153f692 calling sync on a place-channel now returns the channel message just like standard racket channels 2011-02-15 13:53:01 -07:00
James Swaine
f9c12f9e58 Merge branch 'master' of pltgit:plt 2011-02-14 14:02:47 -06:00
Matthew Flatt
8c0d19fb12 fix `configure' for 64-bit Mac OS X kernel 2011-02-11 06:37:34 -07:00
James Swaine
19dbee0405 Added semaphores for futures 2011-02-08 17:58:02 -06:00
James Swaine
0a73a9d5a1 Added semaphores for futures 2011-02-08 17:55:12 -06:00
Matthew Flatt
3e38071dae fix scheduler's support for `ffi/unsafe/try-atomic'
where problems with abort-without-dynamic-wind mode caused
  a spurious trigger of nack evts
 Merge to 5.1
2011-02-05 16:48:39 -07:00
Matthew Flatt
da6d4f3fba futures: fix `future' when given a non-JITted procedure
Merge to 5.1
2011-02-05 06:43:09 -07:00
Matthew Flatt
7579b48791 futures: fix lightweight-continuation GC bug
Merge to 5.1
2011-02-05 06:43:08 -07:00
David Van Horn
760a58b65d Fixes more spelling errors. 2011-02-04 19:44:13 -07:00
David Van Horn
c9519fd113 Fixed various spelling errors. 2011-02-03 17:42:33 -05:00
Kevin Tew
528948291d Fix creation of types and events after the master gc has been switched out 2011-02-03 13:14:45 -07:00
Matthew Flatt
309e1aec4f re-generate `configure' script
Merge to 5.1, along with e91f243b64
2011-02-02 16:10:40 -07:00
Matthew Flatt
9d204c01cf fix problem with allocation while holding a future lock
Merge to 5.1
2011-02-02 16:09:45 -07:00
Eli Barzilay
e91f243b64 Avoid compiling plot if the source directory is missing 2011-02-02 16:09:49 -05:00
Vincent St-Amour
62327c5f50 Fix make-->vector doc typo.
Closes PR 11698.

Merge to 5.1.
2011-02-02 14:00:14 -05:00
Matthew Flatt
9134aa4ee8 add missing mutex unlock in error path
Merge to 5.1
2011-02-01 19:37:02 -07:00
Vincent St-Amour
a0e6d67db2 Fix build when disabling single-precision floats. 2011-02-01 18:00:26 -05:00
Kevin Tew
9f51cb838f Fix used_pages count for place channel messages 2011-02-01 09:17:41 -07:00
Eli Barzilay
60bb91fd30 New Racket version 5.1.0.2. 2011-02-01 03:50:12 -05:00
Matthew Flatt
dfa36afa89 change `floating-point-bytes->real' to always produce a flonum 2011-01-31 19:52:50 -07:00
Matthew Flatt
ff0a591b7b change FFI `_float' to coerce to Racket double-precision flonum 2011-01-31 19:33:07 -07:00
Matthew Flatt
3ef32d915b make inexacts `eqv?' only when precision is the same
plus some other small fixes
2011-01-31 19:16:33 -07:00
Matthew Flatt
dc49e6a364 fix configure reporting of --disable-float 2011-01-31 19:16:07 -07:00
Matthew Flatt
fad0224259 fix mysterx for single-precision floats 2011-01-31 19:15:31 -07:00
Matthew Flatt
1e09a544a6 adjust _float' and _double' FFI types to accept any inexact real
whether single-precision or double-precision
2011-01-31 18:04:05 -07:00
Matthew Flatt
f9bcdc9baf move float config to "mzconfig.h"; enable by default for Windows 2011-01-31 17:51:09 -07:00
Vincent St-Amour
e65b206e6e Add functions to convert back and forth between floating-point representations. 2011-01-31 16:39:17 -05:00
Vincent St-Amour
03ec1ec501 Add a single-flonum? predicate to test for single-precision floats. 2011-01-31 16:39:17 -05:00
Vincent St-Amour
ac76d963b0 Enable single-precision floats by default. 2011-01-31 16:39:17 -05:00
Vincent St-Amour
c997ae139b Single-precision floats now print differently from their double-precision
counterparts.
2011-01-31 16:39:16 -05:00
Vincent St-Amour
d220e0a10b Add read syntax for single-precision float specials. 2011-01-31 16:39:16 -05:00
Matthew Flatt
dd5f0dfc80 fix `read-language' exn construction in an EOF case
Closes PR 11683
 Merge to 5.1
2011-01-31 06:49:13 -07:00
Matthew Flatt
bc5ab1e031 fix problems with `read-language' error reporting 2011-01-30 07:47:46 -06:00
Eli Barzilay
c945f5d27d New Racket version 5.1.0.1. 2011-01-30 03:50:12 -05:00
Matthew Flatt
0e169cfbb7 fix version number 2011-01-29 13:39:34 -06:00
Eli Barzilay
f190e3efec Post-release version for the v5.1 release 2011-01-29 13:04:18 -05:00
Matthew Flatt
b5bc288f67 Windows: fix `path-list-string->path-list' to throw away quotes
--- which seems to be what the command shell does with quotes in
 PATH, at least; Microsoft isn't in the habit of documenting this
 sort of thing
2011-01-25 20:30:33 -07:00
Eli Barzilay
1e2a6ffd60 New Racket version 5.0.99.7. 2011-01-25 03:50:12 -05:00
Matthew Flatt
5e3dbbc3f8 change gracket -z' to just use read-eval-print-loop'
instead of `textual-read-eval-print-loop'
2011-01-24 19:47:21 -07:00
Matthew Flatt
069a7c2b48 add current-get-interaction-input-port' and adjust racket/gui'
so that GUI events are dispatched while a REPL is blocked on input
2011-01-24 19:47:20 -07:00
Vincent St-Amour
dfac6641f7 Typo. 2011-01-24 17:00:55 -05:00
Matthew Flatt
f36db863bb refine `char-graphic?' to include all chars in L and N categories
Closes PR 11664
2011-01-24 07:08:11 -07:00
Matthew Flatt
0c193a599a fix uncaught-exception-handler handling of non-escaping escape handler
and change the emergency error display handler to log and error
 Closes PR 11630
2011-01-20 14:01:33 -07:00
Matthew Flatt
6b115ecf33 fix glib log-message construction 2011-01-18 11:02:46 -07:00
Matthew Flatt
07a7916142 fix string-ref' and bytes-ref' error message
Closes PR 11064, since the problem that triggered the bad
 error message is also fixed
2011-01-16 20:00:39 -07:00
Matthew Flatt
21eee45a48 fix `read-language' when input has only comments 2011-01-16 19:01:45 -07:00
Robby Findler
1f66d545c0 adjust build.bat to respect PLT_SETUP_OPTIONS
closes PR 11629
2011-01-15 19:22:44 -06:00
Matthew Flatt
6e65311702 fix scheduler interaction with atomic mode 2011-01-15 16:46:33 -07:00
Matthew Flatt
c2afc03b3b fix interaction of `continuation-mark-set-first' and prompts
including a documentation fix
2011-01-15 08:05:55 -07:00
Matthew Flatt
84237c2cf3 fix optimizer bug that can attempt infinite unrolling of loops 2011-01-13 12:48:44 -07:00
Matthew Flatt
79cd92859c disable user-specific setup on `make install' by default
and add a `--enable-userspecific' flag for `configure'
2011-01-13 10:59:20 -07:00
Matthew Flatt
be1046baa1 fix GC log printout 2011-01-10 06:43:27 -07:00
Matthew Flatt
ea51d32e9d fix subprocess checking when the process moves itself to a new group
Closes PR 11200
2011-01-08 10:29:32 -07:00
Vincent St-Amour
b32287fa2d Fixed a bug with complex numbers made from floats of differing precision.
It used to be that constructing complex numbers from a float and a
double sometimes caused incorrect coercions.
2011-01-05 14:42:31 -05:00
Vincent St-Amour
2bf83832b9 Fix zero? error message. Accepts any number, not just reals. 2011-01-05 14:42:31 -05:00
Matthew Flatt
dd0b41d974 linux: reset to extended-precision fp before calling pow() 2011-01-04 16:13:02 -07:00
Matthew Flatt
e88c2142e6 some intptr_t printf fixes 2011-01-04 16:12:12 -07:00
Matthew Flatt
13ddab969b enable ptherads by default for OpenBSD 2011-01-04 12:44:36 -07:00
Matthew Flatt
cd676fe81c another context-cache repair 2011-01-03 18:04:11 -07:00
Matthew Flatt
c5de056da5 another continuation-context caching repair
because the previous repair essentially disabled caching
2011-01-02 16:38:25 -07:00
Matthew Flatt
a226abec59 fix entry loss in continuation-context caching 2011-01-02 16:04:26 -07:00
Matthew Flatt
dbd8faee1b fix scheduler bug
where the particular combination of events seems not
 to have been possible until the extra delim-cont
 for try-atomic hook was added
2011-01-02 09:24:15 -07:00
Matthew Flatt
bdc0d2c862 like f57b431c2e (missed other case) 2011-01-01 08:22:17 -07:00
Eli Barzilay
7cac1f6ac2 New Racket version 5.0.99.6. 2011-01-01 03:50:21 -05:00
Matthew Flatt
44cf598298 win32 file locking 2010-12-31 14:40:39 -07:00
Matthew Flatt
55693e090f add port-try-file-lock?' and port-file-unlock' 2010-12-31 14:40:27 -07:00
Eli Barzilay
1f49e35b21 2010 -> 2011 2010-12-31 15:59:39 -05:00
Eli Barzilay
e2cc0942cc Attempt to make some ignore files more robust 2010-12-31 15:59:39 -05:00
Matthew Flatt
e094cf4e51 win64: fix external reference to thread-locals 2010-12-31 07:42:40 -07:00
Matthew Flatt
42794ee337 rollback win32 transaction experiment 2010-12-30 17:31:05 -07:00
Matthew Flatt
4b1ead5bfe win64: stubs for stack-unwind support 2010-12-30 10:48:15 -07:00
Matthew Flatt
678bfa7fca win32: fix transaction creation 2010-12-30 10:43:52 -07:00
Matthew Flatt
05046c07a8 win32: implement 'rename-file-or-directory' with transactions, if available 2010-12-30 09:30:28 -07:00
Matthew Flatt
f57b431c2e JIT: although `values' is inlined, don't count it as "simple" 2010-12-29 10:39:37 -07:00
Matthew Flatt
3b032893c1 don't JIT-inline `values' in a single-value position 2010-12-28 17:47:03 -07:00
Matthew Flatt
84a4f3f006 remove a forced GC (surely a bad idea) in the weak-hash implementation 2010-12-28 16:16:24 -07:00
Matthew Flatt
3e3ed33cbf detect and report a case of deadlock 2010-12-28 11:09:45 -07:00
Matthew Flatt
51ff346e2f clarify mutual exclusion of gtk logging cases 2010-12-27 17:43:36 -07:00
Matthew Flatt
705b11f2b8 a prompt-test fix like the previous one, but for post thunks 2010-12-27 15:24:33 -07:00
Matthew Flatt
0d3fbb11fa supress a prompt test that doesn't apply to composable continuations 2010-12-26 16:21:28 -06:00
Matthew Flatt
0fd9a76081 VS SGC build 2010-12-26 09:35:26 -07:00
Matthew Flatt
b404ef9970 fix JIT bug related to 'apply' 2010-12-26 09:35:25 -07:00
Matthew Flatt
1c479bb0fb SGC fixes for Win32 2010-12-26 09:35:23 -07:00
Matthew Flatt
76b475aa27 avoid compiler warnings 2010-12-26 06:47:53 -06:00
Matthew Flatt
4094bd33f0 fix allocation bug in logging-message construction 2010-12-26 06:47:52 -06:00
Matthew Flatt
f11e66fd71 fix sgcdebug configuration 2010-12-26 06:47:51 -06:00
Matthew Flatt
e77917db8c fix another continuation bug discovered by Casey's random testing 2010-12-25 17:12:33 -06:00
Matthew Flatt
e7b52bf10f fix ffi handling of non-GCable pointers with offsets
Closes PR 11567
2010-12-25 09:34:07 -06:00
Matthew Flatt
78b2e47541 fix more try-atomic problems 2010-12-21 18:45:36 -07:00
Matthew Flatt
391e7f486f fix signedness bug in GC
which fixes memory accounting in particular
2010-12-21 12:39:18 -06:00
Matthew Flatt
ad890077d0 JIT-inline `values' and make it synced (not "unsafe") for futures 2010-12-21 11:06:35 -06:00
Matthew Flatt
17c802c2e1 compiler: (let ([x (begin M ... N)]) P) => (begin M ... (let ([x N]) P)) 2010-12-21 11:06:35 -06:00
Eli Barzilay
3751452530 New Racket version 5.0.99.5. 2010-12-16 03:50:17 -05:00
Matthew Flatt
31906d6261 route glib logging to Racket logging 2010-12-15 12:25:45 -07:00
Matthew Flatt
7f5ac2b7f9 restore Win64 fix to FFI
that I had improperly added to "foreign.c" instead of the source
2010-12-14 07:53:19 -07:00
Matthew Flatt
3b4a1c4e94 fix some GC-related problems
due to pointer fields in GC-allocated structures that do not refer
 to GC-allocated memory; if the corresponding memory is free()ed and
 then the GC later takes over the same page of memory, then bad
 things can happen; some of the problems were crashing the Windows
 port while running the 2htdp image tests
2010-12-14 05:53:48 -07:00
Matthew Flatt
790a91e520 fix minor potential GC bugs and add some debugging support 2010-12-13 16:31:13 -07:00
Matthew Flatt
04d1397825 yet another PRIdPTR fix 2010-12-13 16:31:13 -07:00
Matthew Flatt
8bfb7de833 revert overzealous printf format conversion 2010-12-12 14:06:33 -07:00
Matthew Flatt
f3c695e3df fix intptr_t printf template for Windows 2010-12-12 08:50:26 -07:00
Matthew Flatt
526c700411 fix more intptr printfs 2010-12-12 08:35:15 -07:00
Matthew Flatt
f9fb041598 use inttypes.h and PTIdPTR 2010-12-12 08:24:20 -07:00
Matthew Flatt
2906a6d750 mzcom minor clean-up 2010-12-11 06:37:44 -07:00
Robby Findler
6c75bda403 fix shadowed var 2010-12-10 20:36:31 -06:00
Matthew Flatt
2ae9f14f9e fix exn raised in refab-struct read errors
Closes PR 11530
2010-12-10 18:33:44 -07:00
Matthew Flatt
2b4f1a6908 extend `sync/timeout' to allow a tail-position fail thunk for polling 2010-12-10 18:06:21 -07:00
Matthew Flatt
f4f2b7c533 fix bug in macro expander 2010-12-10 13:41:05 -07:00
Eli Barzilay
adb657fc5f Bump _WIN32_WINNT to 0x0501, since that's what the compiler recommends to do
when it complains about a value that is too low.

This complaint happens when building with 2010 -- I resolved these
complaints (here and in mysterx) by adding the definition to the vcxproj
files, but the 3m compilation still needs it.

For the record, the error text is:

  C:\Program Files\Microsoft Visual Studio 10.0\VC\ATLMFC\INCLUDE\atlcore.h(35) : fatal error C1189: #error :  This file requires _WIN32_WINNT to be #defined at least to 0x0403. Value 0x0501 or higher is recommended.
2010-12-10 03:54:02 -05:00
Eli Barzilay
a8bf338962 Attempt to fix "libffi.vcxproj".
* Sorted out mess for output directories and commands.
* Minimized some redundant repetitions.
* Used consistent OutDir and IntDir directories.
2010-12-10 03:19:01 -05:00
Eli Barzilay
aa58d1773d Make "gc2/make.rkt" look for "win32/release" directories.
I made the 2010 project files use a consistent path of
  $(Platform)\$(Configuration)\
so make this script look for "win32/release" before just "release".  (It
would be better to do the same in the 2008 project files.)
2010-12-10 02:20:36 -05:00
Matthew Flatt
24a4fe52c7 typo 2010-12-09 20:08:35 -07:00
Eli Barzilay
9dc8cb8152 Solution and project files for Visual Studio 2010. 2010-12-09 10:59:49 -05:00
Eli Barzilay
a7ef05d749 Remove wxwindow includes that are now gone. 2010-12-08 22:13:38 -05:00
Eli Barzilay
977dbfcdf4 add missing include directories for debug mode 2010-12-08 22:10:21 -05:00
Matthew Flatt
4b89dde511 win32: fix libffi assembly command line 2010-12-07 12:21:18 -07:00
Matthew Flatt
43664610c7 mysterx fix for VS 2008 2010-12-06 15:00:59 -07:00
Eli Barzilay
49b9f42ae7 Remove the VCWebServiceProxyGeneratorTool tool, since the 2010 version says it is no longer supported. 2010-12-06 10:22:56 -05:00
Matthew Flatt
8913de4d95 more little project fixes 2010-12-06 07:31:19 -07:00
Matthew Flatt
2cc6a4f7af win32: fix a type 2010-12-06 07:27:40 -07:00
Matthew Flatt
336eb4329e fix mysterx output dir 2010-12-06 07:02:03 -07:00
Matthew Flatt
b7892a3404 msvc project: fix include dirs for Debug configurations 2010-12-06 06:33:07 -07:00
Matthew Flatt
011fa0bb90 improve build.bat and related clean-up 2010-12-06 06:25:39 -07:00
Matthew Flatt
9dc827dec3 win64: futures 2010-12-05 20:42:47 -07:00
Matthew Flatt
ff6172c44b fix futures for CGC, where lightweight continuations are disabled 2010-12-05 13:13:16 -07:00
Matthew Flatt
8b49d11706 win64: mysterx and mzcom 2010-12-05 07:46:46 -07:00
Matthew Flatt
1f736f4ad8 win64: fix fixnum printing 2010-12-04 18:36:33 -07:00
Matthew Flatt
327b7ac6a1 unbreak Windows build
Reverses part of Mike's change for FreeBSD,
 but I still think that mzconfig.h should have
 covered that part of the FreeBSD problem
2010-12-04 18:36:32 -07:00
Matthew Flatt
fda0228631 fix broken inexact-reader configuration
Closes PR 11496
2010-12-04 16:22:17 -07:00
Matthew Flatt
e2429e8362 sync with schemef.h change 2010-12-04 16:21:10 -07:00
Mike Sperber
d8927ddd73 Unbreak build in FreeBSD.
One missing include, and two prototype conflicts.

--HG--
extra : rebase_source : 3c1c33cda0628e1351bd6dad5f6e1e03b5acd03a
2010-12-04 17:28:49 +01:00
Matthew Flatt
a56e547db6 win64: racket/draw and racket/gui 2010-12-04 08:29:34 -07:00
Matthew Flatt
c9e1bb2c46 fix printf configuration 2010-12-04 06:36:12 -07:00
Matthew Flatt
5065f39dec win64: racket3m 2010-12-03 22:35:38 -07:00
Matthew Flatt
52f0a8cf5e fix some integer-type mismatches 2010-12-03 20:26:26 -07:00
Matthew Flatt
7319b539f0 win64: initial CGC build 2010-12-03 20:11:53 -07:00
Matthew Flatt
8388f28f33 switch windows build to main libffi sources 2010-12-03 14:21:31 -07:00
Matthew Flatt
116d88577e restore old behavior of _fixint' and _ufixint'
Closes PR 11492
2010-12-03 14:20:38 -07:00
Matthew Flatt
3d3d71de00 fix sgc build 2010-12-03 09:14:19 -07:00
Matthew Flatt
b86349ad72 include <stdint.h> to get intptr_t 2010-12-03 09:11:11 -07:00
Matthew Flatt
8b8dd77ad6 change nearly all long's to intptr_t'
and also changed vector, string, and byte string counts to
   `intptr_t' instead of `int'.

   Except for the vector count, etc. change, this is not really a
   change for any currently supported platform, where `intptr_t'
   is the same as `long'. It's a step to suporting Win64, though,
   where `long' is the same as `int' instead of `intptr_t'.
2010-12-03 08:48:33 -07:00
Matthew Flatt
ffb56642de win32: upgrade projects to VS 2008 2010-12-03 08:00:11 -07:00
Eli Barzilay
3419b747b6 Add trustInfo to avoid UAC, commented out for now. 2010-12-02 07:31:00 -05:00
Eli Barzilay
39806412ce Indent manifest files. 2010-12-02 07:31:00 -05:00
Eli Barzilay
170905d332 New Racket version 5.0.99.4. 2010-12-02 03:50:10 -05:00
Kevin Tew
7d8c520480 Remove unused variable 2010-12-01 15:18:13 -07:00
Matthew Flatt
391adfcd3a fix chaperone bug in `checked-procedure-check-and-extract' 2010-12-01 11:10:38 -07:00
Matthew Flatt
082515d6db fix namespace-anchor on non-module namespaces 2010-12-01 06:52:11 -07:00
Eli Barzilay
5e5678b29d New Racket version 5.0.99.4. 2010-12-01 03:50:10 -05:00
Matthew Flatt
d95e6f35c1 clean up 2010-11-30 15:51:12 -07:00
Matthew Flatt
ca8b32725e fix bloking operations during a try-atomic
and remove old delim-cont support used by gr1
2010-11-30 15:08:16 -07:00
Eli Barzilay
8903d1b5c9 Patch Racket manifest file too. 2010-11-30 05:15:12 -05:00
Matthew Flatt
0b19c6e798 fix bug in composable continuations
--- as deiscovered by Casey's random tester
2010-11-27 09:52:11 -07:00
Matthew Flatt
5aff70029a centralize glib loading as used by racket/draw and Gtk racket/gui 2010-11-26 11:20:15 -07:00
Matthew Flatt
0540359965 fix GC handling of cpointers with offsets 2010-11-25 10:38:43 -07:00
Eli Barzilay
41d6459e9d New Racket version 5.0.99.3. 2010-11-25 11:00:41 -05:00
Matthew Flatt
aaa39873db v5.0.99.3 2010-11-25 08:50:37 -07:00
Matthew Flatt
1034c9be4e fix hashing on C pointers and missing tests 2010-11-24 15:44:18 -07:00
Matthew Flatt
bd28f2ab54 make `equal?' equate C pointers that refer to the same address 2010-11-24 13:41:11 -07:00
Matthew Flatt
142cdb800f fix GC interaction for non-Racket thread and #:async-apply callbacks 2010-11-23 09:39:38 -07:00
James Swaine
dd44053911 Add execution time logging for futures. 2010-11-22 14:23:05 -06:00
Matthew Flatt
1762a9a872 fix set!' of define-for-syntax'ed varable in `let-syntax' RHS 2010-11-16 20:18:11 -07:00
Matthew Flatt
a8b318da7a fix ffi issue with pointer vs. gcpointer
- don't put a non-gcpointer into a pointer array during ffi call setup
 - fix GCness of pointers to structs inside of structs
2010-11-14 15:54:17 -07:00
Eli Barzilay
4d2e0e4486 Fix bug 2010-11-13 09:39:51 -05:00
Eli Barzilay
885fa11bfe Change the library download procedure.
Instead of downloading to the build directory and then copy files from
there to the target, download directly to the target.  This way no
downloading is necessary when people use a fresh build directory.
2010-11-13 01:27:15 -05:00
Matthew Flatt
42a4465fb0 fix bytecode compiler bugs in tracking known-flonum arguments 2010-11-12 15:28:57 -07:00
Matthew Flatt
dc64b01015 tweak JIT generation of fixnum mult with a constant argument 2010-11-12 15:28:57 -07:00
Jay McCarthy
022d289059 Removing compiler warnings. I think most of the effected code is not even used in Racket 2010-11-11 15:59:50 -07:00
Matthew Flatt
635ba4537e flonum unboxing repairs
- fix bytecode compiler's detection that fl+, etc. want flonum args
 - fix JIT handling of known-flonum arguments in recursive self calls
   where the argument would normally be cleared from the runstack
2010-11-11 14:39:45 -07:00
Eli Barzilay
e3592e10a8 Remove all mentions of UnicoWS.
Also, get rid of "uniplt.c", and fix "src/racket/src/string.c" and
"src/gracket/grmain.c" to use CharLowerBuffW().
2010-11-10 23:48:35 -05:00
Eli Barzilay
d58395cd0b Provide library lists out of "get-libs.rkt" and make it possible to require it
without doing anything, use this in the distribution specs to include them.
2010-11-10 23:44:36 -05:00
Eli Barzilay
6a997be578 Make get-libs retreive core racket libraries too.
Also move it up a level, since it's a more generic tool now.
2010-11-10 20:40:49 -05:00
Eli Barzilay
614f100e8f Move "src/worksp/extradlls" to libs. 2010-11-10 20:40:48 -05:00
Matthew Flatt
8d1827222c improve docs in 'interior allocation mode and improve 'interior-atomic 2010-11-10 09:18:31 -07:00
Matthew Flatt
11f45cd2fd fix plot build to use CC from Makefiles; fix fallout in Mac build
to clean up the hack of putting -m32 in CC instead of CFLAGS
2010-11-10 07:20:35 -07:00
Eli Barzilay
8e0c7477f6 drop "www." from "racket-lang.org" urls. 2010-11-09 20:11:14 -05:00
Matthew Flatt
a0a414465d fix problem with multiple captures of the same continuation
--- a bug introduced when enabling full continuations
     to escape past continuation barriers in v5.0.1
 Closes PR 11409
2010-11-09 16:48:23 -07:00
Matthew Flatt
fc111f8909 pass CFLAGS and LDFLAGS along for plot library build 2010-11-09 06:55:37 -07:00
Eli Barzilay
015c3cc052 New Racket version 5.0.99.2. 2010-11-09 03:50:12 -05:00
Matthew Flatt
0a179481a5 fix continuation capture in continuation transferred to a thread
where the prompt is the implicit one at the thread's creation
 Closes PR 11382
2010-11-08 18:06:07 -07:00
Matthew Flatt
90ac279096 add 'can-impersonate option to `make-struct-type-property' 2010-11-08 14:00:59 -07:00
Jay McCarthy
f8ca8f3677 Fixing undefined in unpack-tgz 2010-11-08 09:38:24 -07:00
Eli Barzilay
3de1b31eaf Use `find-executable-path' to find a tar executable, wait for it to finish. 2010-11-08 10:10:54 -05:00
Matthew Flatt
5354e557d4 simplify plot-lib build
--- slower, but less of a hack
2010-11-08 06:31:46 -07:00
Matthew Flatt
7f67b6569c v5.0.99.2: proxy' -> impersonator' 2010-11-08 06:23:16 -07:00
Matthew Flatt
81488335cd fix .tgz file sizes in get-libs and fix download to check size 2010-11-08 06:09:32 -07:00
Matthew Flatt
e402d68efc fix `find-graphical-system-path' 2010-11-07 07:08:33 -07:00
Matthew Flatt
7a2cee44cd fix `install-both' makefile target 2010-11-07 05:07:14 -07:00
Matthew Flatt
cccfdbe2c4 misc clean-up related to build changes 2010-11-06 22:08:15 -06:00
Matthew Flatt
5247073c53 add plot libs to win32 binary lib list 2010-11-06 18:49:45 -06:00
Matthew Flatt
514706446e overhaul plot organization
by moving needed C source to src/plot and building during `make',
 but stripping out the copies of gd, png, and zlib; instead, hook
 a dc<%>-based back end into plot
2010-11-06 16:54:29 -06:00
Eli Barzilay
b212a4a39d New Racket version 5.0.99.1. 2010-11-06 03:50:28 -04:00
Matthew Flatt
d065fb39e1 remove OpenGL testing from configure script 2010-11-05 19:20:59 -06:00
Matthew Flatt
263000a7b8 v5.0.99.1 2010-11-05 15:54:56 -06:00
Matthew Flatt
7a3e132a96 switch lib download site to download.racket-lang.org 2010-11-05 15:54:56 -06:00
Matthew Flatt
ecefaeee8b remove more obsolete code 2010-11-05 15:54:52 -06:00
Matthew Flatt
fddcdcf797 fix gracketcgc link line 2010-11-05 15:54:52 -06:00
Matthew Flatt
58e1e37734 fix bug in ffi struct alignment 2010-11-05 15:54:51 -06:00
Eli Barzilay
3143192713 New Racket version 5.0.2.2. 2010-11-05 15:54:51 -06:00
Matthew Flatt
89e8801a26 v5.0.2.2 2010-11-05 15:54:51 -06:00
Matthew Flatt
38ead42fca remove obsolete C code 2010-11-05 15:54:51 -06:00
Matthew Flatt
05cfffdf9e v5.4.99.1, executable-yield-handler', and make-bitmap' etc. 2010-11-05 15:54:50 -06:00
Matthew Flatt
901f27fcd0 finalization GC repair 2010-11-05 15:54:48 -06:00
Matthew Flatt
d2275f4179 level-2 finalization from ffi/unsafe and late-weak references 2010-11-05 15:54:47 -06:00
Matthew Flatt
40a65a46d2 overhaul GC finalization 2010-11-05 15:54:47 -06:00
Matthew Flatt
73dd8cc697 fix gc handling of ephemeron chains 2010-11-05 15:54:47 -06:00
Matthew Flatt
a7426c1c27 cocoa: fix startup -psn_ and file handling 2010-11-05 15:54:46 -06:00
Matthew Flatt
f57961fba4 cocoa ppc repairs 2010-11-05 15:54:46 -06:00
Matthew Flatt
8c5db384d4 more obj-c pre-2.0 fixes 2010-11-05 15:54:45 -06:00
Matthew Flatt
4360a45fa6 win32: single-instance support 2010-11-05 15:54:42 -06:00
Matthew Flatt
045da06ace gtk: command line and single-instance support 2010-11-05 15:54:42 -06:00
Matthew Flatt
aa1322845e disable immobile-box debugging code 2010-11-05 15:54:41 -06:00
Matthew Flatt
dd2dd733c0 win32: more break-handling repairs 2010-11-05 15:54:37 -06:00
Matthew Flatt
9702e7c6d3 win32: fix gracket console stdout, half-fix break signal 2010-11-05 15:54:37 -06:00
Matthew Flatt
815278fe43 Windows: use PLT_WIN_GTK for gtk; fix manifest embedding 2010-11-05 15:54:33 -06:00
Matthew Flatt
604afc1803 win32 widgets, mouse events, and cursors 2010-11-05 15:54:32 -06:00
Matthew Flatt
1402583ad2 win32 dialogs, etc. 2010-11-05 15:54:32 -06:00
Matthew Flatt
a853dac49f upgrade mac cairo to 1.9.14 2010-11-05 15:54:19 -06:00
Matthew Flatt
9bbe4e5095 adjust win32 lib sizes for gtk 2.16 2010-11-05 15:54:18 -06:00
Matthew Flatt
15a7a2a006 cocoa tab-panel in no-border mode uses PSMTabBarControl 2010-11-05 15:54:17 -06:00
Matthew Flatt
ff57455150 manual font substitution for Mac OS X 2010-11-05 15:54:10 -06:00
Matthew Flatt
c42d95216e auto-scroll canvases and frame status lines 2010-11-05 15:54:10 -06:00
Matthew Flatt
3b1b989ccc fix configure merge 2010-11-05 15:54:02 -06:00
Matthew Flatt
f158effa98 fix bad Makefile merge 2010-11-05 15:54:01 -06:00
Matthew Flatt
471a8bc1f8 fix gracket init-file path 2010-11-05 15:54:00 -06:00
Matthew Flatt
0709870ef9 Windows build and config repairs 2010-11-05 15:53:59 -06:00
Matthew Flatt
51396e2baa auto-download pre-built Win/Mac binaries during build 2010-11-05 15:53:59 -06:00
Matthew Flatt
233b131d9b clarify some notes and comments 2010-11-05 15:53:58 -06:00
Matthew Flatt
5bef90e197 instructions and script for building 3rd-party OS X libraries 2010-11-05 15:53:57 -06:00
Matthew Flatt
aabc1cf5a7 fixes for Windows 2010-11-05 15:53:56 -06:00
Matthew Flatt
f3b7e1315f gracket repair 2010-11-05 15:53:56 -06:00
Matthew Flatt
a574d9e7e4 C source and build changes to drop wx frm GRacket 2010-11-05 15:53:54 -06:00
Matthew Flatt
b489921d8b fix `[unsafe-]fl{min,max}' in nested unboxed position 2010-11-04 14:10:27 -06:00
Kevin Tew
f4165eef31 [Places] add void to allowed messages 2010-11-04 09:31:33 -06:00
Matthew Flatt
aaafe86dd0 fix JIT bug related to ignored `let' bindings
Closes PR 11380
2010-11-03 06:48:47 -06:00
Matthew Flatt
44be06121c fix JIT check for composing arithemtic with flonums in registers 2010-11-02 14:04:43 -06:00
Matthew Flatt
2a2aede4c5 avoid JIT internal error for misuse of unsafe flonum args 2010-11-02 13:39:28 -06:00
Kevin Tew
578b2d846b [Places] fxvector support, fix compiler warning 2010-11-02 12:46:44 -06:00
Jay McCarthy
51f56c84f6 Fixing warning 2010-11-01 10:23:19 -06:00
Blake Johnson
7bffbc31a2 Avoiding cycles in everything but closures 2010-10-29 19:50:11 -06:00
Matthew Flatt
5d8e000d6d swap vector*-ref' and vector-ref', etc.
Merge to 5.0.2
2010-10-25 11:22:35 -06:00
Matthew Flatt
802e27eb85 fix typo in CPP macro
Merge to 5.0.2
2010-10-25 06:37:22 -06:00
Kevin Tew
9088b47a1d [Places] fixes 2010-10-22 21:48:13 -06:00
Kevin Tew
c1f2dea1ed cpuid assembly fix Merge to 5.0.2 2010-10-22 21:21:38 -06:00
Matthew Flatt
c512dbd6d3 fix bogus reordering of floating-point args in unboxing mode
Merge to 5.0.2
 Closes PR 11272
2010-10-22 21:19:18 -06:00
Matthew Flatt
93ba544c60 fix PPC JIT `vector-length'
Merge to 5.0.2
2010-10-22 19:47:29 -06:00
Matthew Flatt
bb799ee9ee fix problem with recursive prints in custom printers
Merge to 5.0.2
2010-10-17 19:32:17 -07:00
Matthew Flatt
68079d738d fix 3m problem with --disable-jit and --disable-futures
Merge to 5.0.2
2010-10-17 08:53:44 -06:00
Matthew Flatt
aaeb21e0cc fix --disable-jit plus --disable-futures
Merge to 5.0.2
2010-10-17 08:51:32 -06:00
Matthew Flatt
51f20afd0b initialize `make-flvector' result with default 0.0s
Merge to 5.0.2
2010-10-17 06:35:09 -06:00
Eli Barzilay
f1982b6683 New Racket version 5.0.2.1. 2010-10-17 03:50:14 -04:00
Matthew Flatt
caa747e5c6 fix an interaction of `dynamic-wind' pre thunks and composable continuations
Merge to 5.0.2
2010-10-16 19:44:33 -06:00
Ryan Culpepper
23d1721ad3 Post-release version for the v5.0.2 release 2010-10-16 18:49:12 -06:00
Matthew Flatt
1203a89a0f fix argument checking for set operations, and also fix recursive print
in the case that the current print is to a string with a limited
  length
 Closes PR 11313
2010-10-13 08:50:47 -06:00
Matthew Flatt
f695848dc9 gracket break-signal repair 2010-10-13 08:50:47 -06:00
Matthew Flatt
36d437a747 fix SIGINT handling thread dependency 2010-10-13 08:50:47 -06:00
Kevin Tew
21d94d7eb5 Fix shared-flvector 2010-10-12 13:19:21 -06:00
Matthew Flatt
5e162d94e2 fix scheme_set_wakeup_time() 2010-10-12 05:55:56 -06:00
Matthew Flatt
c6d355d08d add some gc-callback protocols for win32 2010-10-10 20:39:29 -06:00
Eli Barzilay
4e841cad7f New Racket version 5.0.1.8. 2010-10-09 03:50:16 -04:00
Matthew Flatt
6ac33a62be set `read-accept-lang' to #t by default, plus related adjustments
including adding some uses of `with-module-read-parameterization'
 so that `read-accept-lang' is set right anyway; still, so many
 many places just set `read-accept-reader' to #t that making
 `read-accept-lang' #f by default looks like too big of an
 incompatibility
2010-10-08 19:01:33 -06:00
Matthew Flatt
c25b20867e fix --enable-floats 2010-10-08 15:13:04 -06:00
Matthew Flatt
fe301b1ff4 print-boolean-long-form, #true, #false, read-accept-lang, flonum? 2010-10-08 15:13:04 -06:00
Matthew Flatt
d0fd2c40ad fix JIT future glue for MSVC 2010-10-08 06:15:15 -06:00
Matthew Flatt
637c541190 fix for lightweight continuations and platforms where they're not available 2010-10-07 17:00:52 -06:00
Matthew Flatt
65ad6aee20 fix `touch' to run a suspended future in the runtime thread
if no future thread is running the future; also adjust the
 policy for suspending a future so that even synchronized
 operations can suspend if there's other work to be done;
 also also fix `current-future' for nested `touch'es and when
 parallel futures are disabled
2010-10-07 14:58:53 -06:00
Matthew Flatt
15302dc844 adjust futures to decouple blocked futures from worker threads
which required adding a notion of "lightweight continuation" to
 the runtime system, where a lightweight continuation involves
 only frames from JIT0generated code (so that details of the stack
 layout are known, for example)
2010-10-07 07:39:16 -06:00
Matthew Flatt
93ef85bbe0 fix JIT `unsafe-vector*-ref' on chaperone with literal index argument 2010-10-05 06:29:47 -06:00
Matthew Flatt
5a7ef5ee3f some unsafe-...* fixes on chaperones 2010-10-05 06:29:47 -06:00
Matthew Flatt
649242ac86 fix JIT-inlined vector-set!' and set-box!' to not mutate immutable 2010-10-05 06:29:47 -06:00
Matthew Flatt
e6a4a95541 improve JIT-generated `unsafe-s16-set!' in somae cases 2010-10-01 07:33:53 -06:00
Matthew Flatt
7f28410353 fix JIT handling of `unsafe-{fl,f64}vector-set!'
so that they aren't slower than `{fl,f64}vector-set!'
2010-10-01 07:07:03 -06:00
Matthew Flatt
60d216290d fix printer (and therefore decompiler) for proxy-prop:application-mark 2010-09-30 20:20:02 -06:00
Matthew Flatt
4b120e5d86 add `proxy-prop:application-mark' 2010-09-29 12:26:46 -04:00
Matthew Flatt
202af50a5a fix JIT problem with proxies and `vector-set!'
Closes PR 11263
2010-09-28 12:09:04 -04:00
Eli Barzilay
b2e86f272e New Racket version 5.0.1.7. 2010-09-25 03:50:16 -04:00
Matthew Flatt
c1aa594657 add fvectors and unsafe-{s,u}16-{ref,set!} 2010-09-24 16:32:07 -06:00
Matthew Flatt
3d16dd698a fix JIT-generated code for `vector-length' on a fixnum
and also code for operations like `fl<' on fixnums in
 certain build modes (CGC, PPC)
2010-09-23 06:46:10 -06:00
Matthew Flatt
3f7343fdc7 fix make_external_cptr() to set is-external flag 2010-09-22 13:31:50 -06:00
Matthew Flatt
55d3647965 fix _string/utf-16 terminator handling 2010-09-20 12:29:51 -06:00
Kevin Tew
faa0c86f50 Places: fix asynchronous receive 2010-09-20 08:42:55 -06:00
Eli Barzilay
d3c7f3faac New Racket version 5.0.1.6. 2010-09-18 03:50:14 -04:00
Matthew Flatt
d92c4e44e2 fix make-reader-graph on proxied vectors 2010-09-17 18:42:29 -06:00
Matthew Flatt
7ec8835bc4 allow intra-module var reference to link in a non-module namespace
Closes PR 11155
2010-09-17 13:35:01 -06:00
Matthew Flatt
bbde0dfbd2 fix problem with continuations captured under a module-body prompt
Closes PR 11165
 where the problem was a misordering of a prompt and a stack push
2010-09-17 13:35:01 -06:00
Matthew Flatt
232a580e53 add prop:proxy-of'; Fix chaperone-of' on keyword-accepting procedures 2010-09-17 08:55:46 -06:00
Matthew Flatt
d4b0048d42 try again to fix trouble mfence use for futures 2010-09-17 06:55:02 -06:00
Mike Sperber
2d378775fc Unbreak compile for new libpng.
From: Mariusz Ceier <mceier@gmail.com>

http://lists.racket-lang.org/dev/archive/2010-September/004328.html
2010-09-16 18:19:33 +02:00
Kevin Tew
44a9434310 Places: mark msg_memory 2010-09-14 11:58:46 -06:00
Matthew Flatt
a5c7d4f5f8 add scheme_get_place_table() 2010-09-14 09:35:44 -06:00
Matthew Flatt
cb09dfbdd3 add another protocol to scheme_add_gc_callback() 2010-09-14 09:21:57 -06:00
Matthew Flatt
3e5c7fefdd add scheme_add_gc_callback() hook for gc notification in a way that lets you describe a foreign function to call without allocating or the call; the allowed protocols are contrained and ad hoc, but it will be enough for GRacket2 2010-09-14 09:21:47 -06:00
Blake Johnson
1f084da620 reverting changes to read.c 2010-09-10 14:46:02 -06:00
Blake Johnson
9599304ca9 zo-marshal fixes and read.c fix for hash tables in symbol table 2010-09-10 14:46:02 -06:00
Matthew Flatt
ff9b535dc6 fix hash proxying in the case that proxied key has no value 2010-09-10 12:46:58 -06:00
Matthew Flatt
6ac15688b2 add alignment option to ffi's cstruct support 2010-09-10 06:59:52 -06:00
Kevin Tew
82c3013b48 Places: Fix 1-copy allocator 2010-09-09 10:28:34 -06:00
Kevin Tew
324a0ce815 Places: check arguments 2010-09-09 10:28:34 -06:00
Matthew Flatt
26e0ad955a fix `unsafe-set-box*!' 2010-09-03 15:44:34 -06:00
Matthew Flatt
aa74cb748e remove outdated note on pthreads 2010-09-03 15:44:33 -06:00
Ryan Culpepper
dbdf00c5f7 macro-stepper: track syntax-local-value and syntax-track-origin (not done) 2010-09-03 13:53:41 -06:00
Kevin Tew
d138b18db7 Remove confusing SIGSEGV message 2010-09-03 09:53:06 -06:00
Matthew Flatt
962ceb6b63 fix interaction between copy prop and once-used binding elimination
in the bytecode compiler, which could cause an expression to be
 duplicated
2010-09-01 15:22:32 -06:00
Matthew Flatt
f04a92d009 fix bug in bytecode optimizer that caused some pessimism 2010-09-01 15:22:32 -06:00
Matthew Flatt
529c8a1281 fix mutable-field check for proxy-struct 2010-09-01 15:22:32 -06:00
Eli Barzilay
5421c29c61 New Racket version 5.0.1.5. 2010-09-01 03:50:13 -04:00
Matthew Flatt
69658697b1 add proxies and rename chaperone properties to proxy properties
where a proxy is less constrained in its conversions but more
 constrained in where it can be used
2010-08-31 19:15:20 -06:00
Kevin Tew
869373cf0d Places: 1-copy messages 2010-08-31 09:01:46 -06:00
Kevin Tew
d43cbab863 Places: message allocators 2010-08-31 09:01:45 -06:00
Kevin Tew
04dceafe49 Places: refactor allocate for custom allocators 2010-08-31 09:01:45 -06:00
Eli Barzilay
2784c186af New Racket version 5.0.1.4. 2010-08-31 03:50:12 -04:00
Kevin Tew
bc5d1c2011 Places: added shared-flvector and shared-byte string 2010-08-30 08:50:07 -06:00
Sam Tobin-Hochstadt
ed41babfbf More comments about closure representation. 2010-08-26 16:59:12 -04:00
Matthew Flatt
f13dcc2915 JIT-inline allocation of location for mutated local bindings 2010-08-25 18:22:09 -06:00
Matthew Flatt
8c16b825de improve bytecode compiler test for converting a letrec to let
- specifically the test for whether the RHS of a binding can
 possibly capture and invoke a continuation
2010-08-25 15:57:01 -06:00
Eli Barzilay
7dc4d2e5a6 Change a bunch of "~%" and "~n" in format strings to "\n". 2010-08-25 17:17:01 -04:00
Kevin Tew
19a00d887e Places: allow channels in compound data communications 2010-08-25 15:10:15 -06:00
Matthew Flatt
947be220e6 change some "~e"s to "~.s"s 2010-08-25 14:58:28 -06:00
Matthew Flatt
a04403a316 add GMT option to seconds->date 2010-08-25 14:58:27 -06:00
Matthew Flatt
cf300b91b9 JIT-inline even?' and odd?' on fixnums 2010-08-24 19:29:20 -06:00
Kevin Tew
f031fa4ad1 Places: Remove old unused definition 2010-08-24 10:39:39 -06:00
Matthew Flatt
f29c6a902f fix problem with old-style constrained-atomic mode 2010-08-24 05:39:47 -06:00
Kevin Tew
8f892a9fb4 fix clang compiler errors 2010-08-20 11:24:48 -06:00
Matthew Flatt
8ba46ccc82 fix compilation when futures are disabled
and other misc futures-related fixes
2010-08-19 12:08:49 -06:00
James Swaine
c56ec371bc Forgot to add files that should have been included in my previous commit. 2010-08-19 09:40:31 -05:00
Matthew Flatt
7abbff4749 adjust rename-transformer expansion to transfer srcloc of use to expansion 2010-08-19 07:38:25 -06:00
Eli Barzilay
e55f0cade1 New Racket version 5.0.1.3. 2010-08-19 03:50:11 -04:00
James Swaine
a41c9b882a Added (current-future) to the futures module (as an inlined, nonblocking primitive). 2010-08-18 23:33:22 -05:00
James Swaine
dac2bcaa20 Merge branch 'master' of pltgit:plt
Conflicts:
	src/racket/src/future.c
2010-08-18 22:23:13 -05:00
James Swaine
8675db4faa Added (current-future) as a non-blocking primitive to racket/future. 2010-08-18 22:15:19 -05:00
Matthew Flatt
e5c2aea998 include `#%futures' in the set of primitive modules with inlining 2010-08-18 20:03:06 -06:00
Matthew Flatt
da173fed65 fix interaction of box chaperones and JIT 2010-08-18 17:11:00 -06:00
Sam Tobin-Hochstadt
67e15ee993 Add some comments. 2010-08-18 16:37:32 -04:00
Kevin Tew
57bda136ea Places: prevent mastergc gen0.big_pages from leaking onto a places gen0.big_pages list 2010-08-18 13:53:08 -06:00
Eli Barzilay
40daf706ac Update COPYING location 2010-08-17 21:03:24 -04:00
Matthew Flatt
0d9f5016ba fix bytecode-writing inconsistencies related to syntax objects and paths
and improve organization of the docs
2010-08-17 17:18:24 -06:00
Matthew Flatt
db43d25559 defend against a broken bytecode file containing a reference cycle 2010-08-17 12:48:24 -06:00
Matthew Flatt
ba5b01e505 fix msvc project name 2010-08-16 07:09:47 -06:00
Matthew Flatt
b50dbc1bba fall back to RLIMIT_DATA when RLIMIT_AS isn't available 2010-08-15 11:02:31 -06:00
Matthew Flatt
b32a0b8401 fix ffi extraction of substruct from GC-managed struct 2010-08-15 11:02:31 -06:00
Matthew Flatt
cf9912c811 fix malloc-immobile-cell 2010-08-15 11:02:30 -06:00
Matthew Flatt
f1ecab0848 try to fix mangled new-style atomic timeout guard 2010-08-14 13:52:09 -06:00
Kevin Tew
1ebdb6a90b Places: remove old code 2010-08-12 13:27:15 -06:00
Matthew Flatt
7a4a287ca6 propagate C flags to make install for "plot" collection setup 2010-08-12 09:07:27 -06:00
Matthew Flatt
ca9f33f035 fix places build to work with embedding like GRacket
- but gracket crashes on startup, probably a GC-cooperation issue
2010-08-12 08:49:49 -06:00
Matthew Flatt
8dc38e9d84 fix boxing of unused but formerly mutated local binding
- an old bug exposed by a new optimization
2010-08-11 14:18:43 -06:00
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
Matthew Flatt
42c7b2b9d3 fix missed parts of the hash-table hahing bug 2010-06-23 07:09:59 -10:00
Matthew Flatt
ccd13c4862 minor improvement to JIT-debggging support 2010-06-23 07:00:30 -10:00
Matthew Flatt
bfd769a29c fix hashing of hash-table values
the order of keys+values in the table could affect the
 hash code, due to an interation with the depth-limiting
 counter
 Closes PR 10985
2010-06-23 07:00:29 -10:00
Jay McCarthy
e191513f70 Adding warning removal attr 2010-06-21 13:04:40 -06:00
Matthew Flatt
8ae46ead66 fix bytecode-compiler step that drops an unused flonum let RHS 2010-06-20 05:30:11 -10:00
Kevin Tew
0e664e7c0b Windows fix 2010-06-16 10:58:05 -06:00
Kevin Tew
41d1daf53c New mmu block layer to avoid uneeded mprotects 2010-06-15 13:03:44 -06:00
Matthew Flatt
d6d5c914f7 cases when number functions produce 0: clarify docs and fix (atan 0 x)
for positive exact x;
 also clarify docs on some cases when divide-by-zero exception is raised
2010-06-11 15:04:24 -06:00
Matthew Flatt
fb14524241 fix validator to allow an ignored reference to a flonum stack slot
Closes PR 10972
2010-06-11 04:19:21 -04:00
Matthew Flatt
1e1202d6f2 fix detection of flonum primitives when the JIT cannot inline 2010-06-11 04:18:39 -04:00
Sam Tobin-Hochstadt
3c2ce01a16 Fix readme to use --disable-gracket 2010-06-10 13:28:29 -04:00
Matthew Flatt
8603b6370b reorder executable-path initialization
fixes GRacket on Mac OS X and probably Win32;
 further fixes still needed to avoid allocating tagged
  objects before calling scheme_basic_env()
2010-06-10 07:32:11 -04:00
Kevin Tew
93eed922b9 Move collects path initialization before kernel creation 2010-06-09 14:17:39 -06:00
Matthew Flatt
32297601b6 use simple-form-path more consistently for path normalization
--- a reversal of opinion from my earlier commit; the problem
 with syntactic simplification is that it may not refer to the
 same file, due to soft links; given that true normalization is
 impossible, simplify-path and simple-form-path provide a good
 compromise between preserving paths as given and exanding
 soft links as neede
2010-06-03 17:23:14 -06:00
Matthew Flatt
d76e361af4 shortcut phase-shifting certs when no shift occurs
otherwise, space consumption can go out of control
 Merge to 5.0
2010-06-03 11:06:51 -06:00
Matthew Flatt
ff3d60c04c avoid potential stack overflow in applying certs on macro result
Merge to 5.0
2010-06-03 11:05:39 -06:00
Matthew Flatt
84e98160c4 fix bug in optimization of (apply ... (list ...)) 2010-06-01 21:25:32 -06:00
Matthew Flatt
4a63afdd2a fix a compiler warning and tune some branches 2010-06-01 20:52:01 -06:00
Matthew Flatt
9307c639cb JIT partial inline of apply 2010-06-01 19:22:39 -06:00
Matthew Flatt
61d39f2568 bytecode compiler convert (apply f .... (list arg ...)) 2010-06-01 19:22:39 -06:00
Matthew Flatt
93ec20f050 lots of gitignores for Windows 2010-05-31 06:55:04 -06:00
Matthew Flatt
9954fe0290 fix another bug in JIT handling of `with-continuation-mark'
Merge to v5.0
2010-05-30 15:04:59 -06:00
Matthew Flatt
83ed233125 fix Mac problem with clipping constructed with paths and transform + scale
Merge to v5.0
2010-05-28 16:55:25 -06:00
Matthew Flatt
9f7a08663d fix bug in JIT handling of with-continuation-mark
The bug was specific to the case of a wcm in tail position
  of another wcm, where its mark should replace the outer one,
  and where the outer one is not in tail position with respect
  to the enclosing function
 Merge to v5.0
2010-05-28 14:28:06 -06:00
Matthew Flatt
eec92017c4 fix problems with distributing unix executables Merge to v5.0 2010-05-28 10:37:18 -06:00
Matthew Flatt
7f2d57e827 build changes aimed at making Sun tools work
Merge to v5.0
2010-05-28 07:17:24 -06:00
Matthew Flatt
bb4b04082a fix cmdline-level printf wrapper for Windows
It was broken in a way that made gracket-text crash
 Merge to v5.0
2010-05-27 16:47:53 -06:00
Matthew Flatt
91ecad670c update mailing list address in src/READMEs
Merge to v5.0
2010-05-27 15:35:14 -06:00
Matthew Flatt
b3fab5cabe fix MzCOM for Racket
Merge to v5.0
2010-05-27 14:13:51 -06:00
Matthew Flatt
64089c4488 add --disable-docs configure option 2010-05-26 17:07:09 -06:00
Matthew Flatt
51dfbe6bc2 fix starter app's collect path on install 2010-05-26 14:19:30 -06:00
Kevin Tew
4d23b11d8f No shared symbols 2010-05-25 11:15:00 -06:00
Matthew Flatt
23617b08bd change default Unix-style installation to use racket in path
Merge to v5.0
2010-05-25 06:58:00 -06:00
Jay McCarthy
387f915f24 Adding local change note 2010-05-24 11:33:16 -06:00
Matthew Flatt
5ce13a34b7 fix some middle-of-C-block variable declrations 2010-05-22 07:05:16 -06:00
Eli Barzilay
c64704742c Fixing some tab damage from Jay's commit 2010-05-21 21:10:53 -04:00
Jay McCarthy
776926141f Adding warning removal pragma 2010-05-21 16:04:12 -06:00
Jay McCarthy
40c412d7ea Adding MAYBE_UNUSED to xc output to remove warnings 2010-05-21 16:04:12 -06:00
Jay McCarthy
a06d8a8a36 Using nicear to get rid of spurious ar stderr output 2010-05-21 16:04:12 -06:00
Jay McCarthy
15a4946d32 Removing strict aliasing error
Adding comment for fixing this error better
2010-05-21 16:04:12 -06:00
Jay McCarthy
15a1dd6b20 Removing paren warning 2010-05-21 16:04:11 -06:00
Jay McCarthy
c29419826c Removing else warning 2010-05-21 16:04:11 -06:00
Jay McCarthy
a2335a763f maybe unused annotations 2010-05-21 16:04:11 -06:00
Jay McCarthy
dd5e574747 Duplicate max/min def 2010-05-21 16:04:11 -06:00
Jay McCarthy
7ed6c41aab XPM warning removal 2010-05-21 16:04:11 -06:00
Jay McCarthy
abf1be31c0 correct int->ptr->int warning on 64bit 2010-05-21 16:04:11 -06:00
Jay McCarthy
ffe527417b Annotating maybe unused 2010-05-21 16:04:11 -06:00
Jay McCarthy
b5ee4ac21b Observing ftruncate results to remove error, adding comments to have better eyes look at a better way to recover from the problems 2010-05-21 16:04:11 -06:00
Jay McCarthy
b66d31e7c1 Confuse GCC data-flow analysis to remove warning: function returns address of local variable 2010-05-21 16:04:11 -06:00
Jay McCarthy
26850e9b9f Add extern prototype for GC_collection_in_progress 2010-05-21 16:04:11 -06:00
Jay McCarthy
1eee0501a6 GC_thr_init prototype in header 2010-05-21 16:04:10 -06:00
Jay McCarthy
741f5502f3 Attempt to remove 'warning: dereferencing type-punned pointer will break strict-aliasing rules' 2010-05-21 16:04:10 -06:00
Jay McCarthy
43d1494aef Adding clock zero and using to avoid uninit errors 2010-05-21 16:04:10 -06:00
Jay McCarthy
010e3d5381 Adding null initializations 2010-05-21 16:04:10 -06:00
Jay McCarthy
749096f87c Added macro to encode warning suppression 2010-05-21 16:04:10 -06:00
Jay McCarthy
a8e51a8a36 Added define to get pthread_getattr_np prototype with copy for systems where that doesn't work 2010-05-21 16:04:10 -06:00
Jay McCarthy
e8c272d463 Avoiding statement with no effect warning 2010-05-21 16:04:09 -06:00
Eli Barzilay
fb042df0c7 New Racket version 5.0.0.1. 2010-05-20 02:50:38 -04:00
Kevin Tew
114a0f142d FreeBSD fix 2010-05-19 10:45:41 -06:00
Kevin Tew
64ed4fb578 [Places] make jit code allocation place local 2010-05-19 10:40:41 -06:00
Kevin Tew
3d9a28eb50 [Places] remove unneeded jit_lock 2010-05-19 10:40:41 -06:00
Eli Barzilay
b85998dd62 Post-release version for the v5.0 release 2010-05-19 06:05:53 -04:00
Eli Barzilay
4e7fb7f62c Some fixes and some reformatting. 2010-05-18 17:15:58 -04:00
Eli Barzilay
4279fe3c4f Some "org.plt-scheme" -> "org.racket-lang"s 2010-05-17 09:54:17 -04:00
Matthew Flatt
66b32b4bee rackety Mac resources and out-of-memory message 2010-05-17 07:11:32 -06:00
Eli Barzilay
9c352f5704 More svn -> git changes.
Some mentions of svn/subversion are replaced with git, and some patterns
for paths to ignore include ".git*".  (Note ".mailmap" not added, might
need to.)
2010-05-17 05:41:04 -04:00
Eli Barzilay
285e9b5279 Use ".rktc" for the C-generated foreign file. 2010-05-17 01:48:39 -04:00
Eli Barzilay
fcedc30ee4 Rename "collects/tests/mred" -> ".../gracket".
Some additional mred-related tweaks.
2010-05-17 01:44:27 -04:00
Eli Barzilay
de0cc7771b A lot of "DrScheme" -> "DrRacket"s. 2010-05-17 01:27:03 -04:00
Eli Barzilay
a46743211b A lot of "plt-scheme.org" -> "racket-lang.org"s. 2010-05-17 00:53:12 -04:00
Eli Barzilay
7f6efdc8be A lot of "MrEd" -> "GRacket"s. 2010-05-16 23:46:05 -04:00
Eli Barzilay
2d9601089d A lot of "MzScheme" -> "Racket"s. 2010-05-16 18:26:26 -04:00
Matthew Flatt
1f613f6e08 fix bug in the combination of object-name, chaperones, and reduced-arity procedures 2010-05-16 07:30:44 -06:00
Eli Barzilay
418b05b8ff Fix a few typos 2010-05-15 21:03:35 -04:00
Eli Barzilay
6b664e0308 More mzscheme -> racket changes. 2010-05-15 18:52:46 -04:00
Matthew Flatt
900784c8e4 fix regexp sub-pattern reporting 2010-05-15 08:36:11 -06:00
Matthew Flatt
dc79d5f656 hack configure scripts to avoid warnings 2010-05-14 16:50:54 -06:00
Jay McCarthy
5c1529d66d Fixing configure error outputs 2010-05-14 13:46:08 -06:00
Matthew Flatt
8752e65bf8 disable check on a module's source name 2010-05-14 11:33:09 -06:00
Matthew Flatt
8f74a69d44 disable futures when building with SGC 2010-05-12 08:51:39 -06:00
Eli Barzilay
88d1cb2029 New Racket version. 2010-05-12 06:00:35 -04:00
Eli Barzilay
8def58b716 Anchor src attributes 2010-05-12 01:46:05 -04:00
Matthew Flatt
50e923b199 add 'eprintf' and 'displayln' 2010-05-11 06:38:34 -06:00
Matthew Flatt
acb98cef60 allow paths as input to regexp-matching functions 2010-05-11 06:03:39 -06:00
Eli Barzilay
745adb03d1 fix src attributes 2010-05-11 02:15:32 -04:00
Eli Barzilay
96a9bdfbc4 Hopefully this fixes the cygwin build on windows 2010-05-11 00:17:32 -04:00
Eli Barzilay
db1af22f91 New Racket version. 2010-05-10 23:01:48 -04:00
Matthew Flatt
2159807e4a try to fix mzcom 2010-05-10 20:40:18 -06:00
Eli Barzilay
f3c8d7f778 Align options in `configure -h'. 2010-05-10 22:13:10 -04:00
Matthew Flatt
899e85f94f change prop:custom-print-as-constructor to more general prop:custom-print-quotable 2010-05-10 18:32:25 -06:00
Matthew Flatt
360f925906 fix mysterx DLL to use rkt inner suffix 2010-05-10 18:32:25 -06:00
Matthew Flatt
2ee555c4e0 adjust CRLF handling of some Windows files 2010-05-10 18:32:25 -06:00
Eli Barzilay
def35e561a New Racket version. 2010-05-10 10:46:54 -04:00
Eli Barzilay
15107e84c7 get back lost CRLFs 2010-05-10 10:16:30 -04:00
Matthew Flatt
202b38a4f4 rackety readme 2010-05-10 06:35:47 -06:00
Matthew Flatt
b2e0d92098 restore 'print-reader-abbreviations' support 2010-05-06 17:45:04 -06:00
Matthew Flatt
43027a8d9b switch printer to constructor+quote style 2010-05-06 10:33:42 -06:00
Matthew Flatt
27cd77c16c fix problem with chaperone of chaperoned hash 2010-05-05 09:23:40 -06:00
Matthew Flatt
7c52a82216 fix another hash chaperone bug 2010-05-05 07:52:48 -06:00
Matthew Flatt
0497baece8 fix problem with gracket locating the pref file for low-level prefs 2010-05-05 07:34:37 -06:00
Matthew Flatt
7359a6f9d0 fix equal? on two chaperoned values 2010-05-05 07:17:58 -06:00
Matthew Flatt
5b9e0e455d fix problem with iteration over chpaeroned hash table 2010-05-05 06:35:16 -06:00
Kevin Tew
9a61471f06 [Places] make jit lock thread local 2010-05-04 15:49:37 -06:00
Kevin Tew
e3e8a54ee9 [Places] THREAD_LOCAL opened_libs 2010-05-04 15:49:36 -06:00
Matthew Flatt
e55acb4bc8 fix bytecode validator on closed case-lambda forms 2010-05-04 15:25:08 -06:00
Matthew Flatt
8af4134991 move result-chaperoning procedure to start of chaperioning procedure's results 2010-05-04 13:56:21 -06:00
Matthew Flatt
250ae872a7 fix Gracket low-level pref, and fix schthread.h for Darwin (and OS X without -DOS_X) 2010-05-04 06:49:09 -06:00
Matthew Flatt
a097b2ef6a fix chaperone-hash to be more consistent with key handling 2010-05-03 17:59:54 -06:00
Matthew Flatt
6e42f95140 fix README typos 2010-05-02 08:43:30 -06:00
Matthew Flatt
424f7b6659 some rackety READMEs 2010-05-02 07:03:16 -06:00
Matthew Flatt
e504acb726 use .rktl suffix for files meant to be 'load'ed 2010-05-01 09:58:16 -06:00
Matthew Flatt
3db8dd7c26 SHA1-based shortcut for compiler/cm 2010-04-30 16:30:10 -06:00
Matthew Flatt
7ed0d4e00a futures: protect use of mfence by processor count 2010-04-29 17:11:42 -06:00
Kevin Tew
1991e9328f [Places] Tag allocate channels.
mark message array
2010-04-29 15:32:55 -06:00
Kevin Tew
5d804c65cb [Places] Only rendezvous with master if rendezvous was requested before local GC started
increase master gen0.max_size to GEN0_INITIAL_SIZE * 10;
2010-04-29 15:32:55 -06:00
Kevin Tew
d6bfd0688a more SIGSEGV info 2010-04-29 15:32:55 -06:00
Kevin Tew
1ce41d49f4 Places GC cleanup on place termination 2010-04-28 11:25:38 -06:00
Kevin Tew
ac8aa01a48 GC - add sanity check default case 2010-04-28 11:25:31 -06:00
Kevin Tew
c56fb66fa0 add page to killing debug 2010-04-28 11:25:24 -06:00
Kevin Tew
0a287b59e0 more SIGSEGV descriptions 2010-04-28 11:25:18 -06:00
Kevin Tew
d2670835ce Remove uneeded place gc lock 2010-04-28 11:25:12 -06:00
Matthew Flatt
2c54268228 move pref file to .rtkd extension, and automatically read from the old PLT Scheme path if the new one doesn't exist 2010-04-28 07:24:39 -06:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Kevin Tew
f4b07e9640 fix missing 2 arg case of sch_default_global_port_print_handler 2010-04-27 14:28:35 -06:00
Robby Findler
05df75f935 Merge branch 'master' of git:plt 2010-04-27 09:20:17 -05:00
Matthew Flatt
327408c12f drop suffix from pref-file name 2010-04-26 15:33:58 -06:00
Matthew Flatt
ed82cca998 Merge branch 'master' of git.racket-lang.org:plt 2010-04-26 15:05:15 -06:00
Matthew Flatt
b3e0a784e4 .mzschemerc -> .racketrc, etc. 2010-04-26 14:40:37 -06:00
Matthew Flatt
db2ed4cef3 change printer to not quote ellipsis in partially opaque structure 2010-04-26 14:18:43 -06:00
Kevin Tew
71827c2a79 GC Cleanup and comments 2010-04-26 13:34:17 -06:00
Kevin Tew
b11593fadb Fix accounting of MASTERGC gen0 memory 2010-04-26 13:34:16 -06:00
Kevin Tew
7eba20b236 Use C Macro to communicate real meaning of page->previous_size 2010-04-26 13:34:16 -06:00
Kevin Tew
d8dd03c728 Don't GC if in atomic mode(have temporarily switched to master) 2010-04-26 13:34:16 -06:00
Matthew Flatt
616080c7c4 change 'define-struct' to bind the type name as a constructor, add an #:extra-constructor-name option, etc. 2010-04-25 12:10:36 -06:00
Matthew Flatt
22470e4147 racket-tool -> raco 2010-04-24 07:46:56 -06:00
Robby Findler
975f6445f0 renamed drscheme collections files to .rkt 2010-04-24 08:01:33 -05:00
Matthew Flatt
845ebfbeb8 hash, hasheq, hasheqv, and hash-equal? 2010-04-23 12:18:42 -06:00
Matthew Flatt
1812515a57 fix xform setup for reader modules, again 2010-04-23 08:39:26 -06:00
Matthew Flatt
82eb64451d switch default configuration to have qq printing enabled, add runtime-config for scheme languages 2010-04-22 15:10:25 -06:00
Matthew Flatt
c76cee4775 fix error reporting for chdir in forked process 2010-04-22 15:10:24 -06:00
Kevin Tew
aff19733d3 [Places] allow creation and communication of arbitrary place channels 2010-04-22 10:51:46 -06:00
Kevin Tew
b86d90a46a [Places] made functions static 2010-04-22 10:51:21 -06:00
Matthew Flatt
fec6528c70 fix command-line parsingand support '-f -' as eval from stdin 2010-04-21 18:50:50 -06:00
Matthew Flatt
0dbf5fc943 fix build problem related to scheme->racket shuffle 2010-04-20 20:43:15 -06:00
Matthew Flatt
88820fc4a4 Merge branch 'master' of git.racket-lang.org:plt 2010-04-20 15:47:14 -06:00
Matthew Flatt
c95a398754 move most of the 'scheme' collection to the 'racket' collection 2010-04-20 15:24:48 -06:00
tewk
8116350df4 [Places] fix stack_base 2010-04-20 11:10:46 -06:00
Matthew Flatt
3f8d1dc34d more scheme -> racket source renaming 2010-04-20 09:22:29 -06:00
Eli Barzilay
866600ac08 Document the root and src ignores 2010-04-18 18:02:56 -04:00
Eli Barzilay
5640fe77c5 Ignores that are roughly the same as the ones in svn 2010-04-18 10:47:32 -04:00
Matthew Flatt
17c5ed073c fix typo 2010-04-16 17:28:44 -04:00
Matthew Flatt
c4367f536c Windows fixes (PR 10861) 2010-04-16 17:11:22 -04:00
Matthew Flatt
840ea4f4f5 simplify [g]racket startup banner 2010-04-15 22:15:43 -04:00
Matthew Flatt
0f0a59732e create core binaries as 'racket' and 'gracket' 2010-04-15 21:15:57 -04:00
Kevin Tew
4f29962d9c [Places] prevent green thread switch during master allocation 2010-04-15 18:10:50 -04:00
Matthew Flatt
406a38148d avoid unnecessary allocation of empty string in common case of regexp-.../full result 2010-04-15 11:26:37 -04:00
Matthew Flatt
249a9e38f7 minor regexp clean-ups 2010-04-15 10:10:19 -04:00
Eli Barzilay
f1fdeb3bff Welcome to a new PLT day. 2010-04-15 03:50:33 -04:00
Matthew Flatt
4bc155905a Perl-like handling of empty matches in regexp-match*, etc., though without Perl-like filtering of empty strings in the result of regexp-split (PR 10855) 2010-04-14 22:53:14 -04:00
Matthew Flatt
1c34ccec44 improve regexp support (PR 10855, halfway) 2010-04-14 18:40:08 -04:00
Kevin Tew
3fe4a22dbd [Places] allocate prefab_table correctly 2010-04-14 18:20:25 -04:00
Matthew Flatt
66c31d456f bug fix
svn: r18810
2010-04-13 17:38:09 +00:00
Matthew Flatt
536fcacc42 more module source versus module path adjustments, especially for contracts
svn: r18809
2010-04-13 17:12:51 +00:00
Eli Barzilay
a12018874e Welcome to a new PLT day.
svn: r18805
2010-04-13 07:50:43 +00:00
Matthew Flatt
ce2d286586 add current-module-declare-source, variable-reference->module-source, convert soe sues of module paths to module sources
svn: r18804
2010-04-13 02:48:40 +00:00
Matthew Flatt
1a4c78fdb2 fix bug in namespace-mapped-symbols (related to PR 10858)
svn: r18801
2010-04-12 21:28:40 +00:00
Kevin Tew
f6a8e78cd6 Comment out rwlock testing function
svn: r18799
2010-04-12 17:43:19 +00:00
Kevin Tew
bfbeb104be gc2 places testing configure option
svn: r18798
2010-04-12 17:39:30 +00:00
Matthew Flatt
3f903c80cf fix compiled-load handler for non-existent files that don't end in .ss/.rkt
svn: r18791
2010-04-12 13:22:22 +00:00
Eli Barzilay
e49cbbfd4d Welcome to a new PLT day.
svn: r18790
2010-04-12 07:50:30 +00:00
Matthew Flatt
bdb71498e3 module paths normalize to .rkt, load handler converts .rkt back to .ss if necessary
svn: r18788
2010-04-11 16:55:18 +00:00
Matthew Flatt
6c9c747e7e fix 'set-box!' slow path; use C compiler for pthreadrwlock test
svn: r18778
2010-04-10 13:29:53 +00:00
Eli Barzilay
c4dfc1df05 Welcome to a new PLT day.
svn: r18777
2010-04-10 07:50:33 +00:00
Matthew Flatt
0b2a43f193 try to fix Linux build problems related to pthreads
svn: r18776
2010-04-09 21:09:49 +00:00
Matthew Flatt
c6cd781e82 fix Windows build
svn: r18772
2010-04-09 20:05:07 +00:00
Matthew Flatt
1621091fc1 add 'current-read-interaction' parameter
svn: r18769
2010-04-09 13:22:57 +00:00
Matthew Flatt
bebf513aa7 change 'configure-runtime to produce a list of module-spcifying vectors instead of a single vector
svn: r18763
2010-04-08 19:11:50 +00:00
Matthew Flatt
5e22bb81f5 constant-folding repairs to some unsafe operations
svn: r18745
2010-04-07 12:48:15 +00:00
Matthew Flatt
abebb1c1f4 fix problem with per-registry locking of available-module visit & instantiation
svn: r18744
2010-04-07 12:34:50 +00:00
Eli Barzilay
da7d9485f1 Welcome to a new PLT day.
svn: r18743
2010-04-07 07:08:07 +00:00
Matthew Flatt
2c36427b20 fix compiler bug with unsafe-c[ad]r and constant folding (PR 10850)
svn: r18742
2010-04-07 02:25:27 +00:00
Matthew Flatt
aec586d2be fix a GC problem related to future and wcm; also fix a race condition related to JITing a delay-loaded procedure (and maybe specific to future-demanded JITting)
svn: r18739
2010-04-06 16:44:53 +00:00
Matthew Flatt
c5ac9f23ec better compiler handling of unused local bindings where the RHS either doesn't obviously produce a single value or is discovered to be unused late in bytecode compilation; initial Scribble support for printing qq-style results
svn: r18737
2010-04-06 15:52:36 +00:00
Eli Barzilay
8e36e8e3eb Welcome to a new PLT day.
svn: r18728
2010-04-03 07:50:06 +00:00
Matthew Flatt
2cb9f378aa Racket experiments
svn: r18725
2010-04-02 21:29:59 +00:00
Matthew Flatt
eff3c44ad3 fix bug in JIT handling of wcm
svn: r18719
2010-04-02 12:22:08 +00:00
Eli Barzilay
2a2562aa87 Welcome to a new PLT day.
svn: r18718
2010-04-02 07:28:09 +00:00
Kevin Tew
20b39568ad Whitespace fixes
svn: r18716
2010-04-01 22:18:06 +00:00
Kevin Tew
191b111109 Communciate Structs
svn: r18715
2010-04-01 17:03:51 +00:00
Kevin Tew
e64d36b71f scheme_make_prefab_struct_type
svn: r18714
2010-04-01 17:03:36 +00:00
Matthew Flatt
e0b9bbeba8 apply patch from Tim Wiess to make the Boehm GC build on OpenBSD
svn: r18712
2010-04-01 13:54:56 +00:00
Matthew Flatt
b2d65a1b95 fix the interaction of chaperones, keywords, and the whole zoo of reflective procedure operations
svn: r18711
2010-04-01 13:14:50 +00:00
Kevin Tew
d34db39be1 Compiler Warning Fixes
svn: r18695
2010-03-31 16:10:29 +00:00
Matthew Flatt
b1801db304 fix unsafe-vector*-set!
svn: r18689
2010-03-31 11:24:49 +00:00
Matthew Flatt
e7e30384e1 per-regstry lock for lazy module instantiation (fixes DrScheme start-up problems); adjust configure for better pthread flags; merge to 4.2.5
svn: r18688
2010-03-31 10:59:49 +00:00
Matthew Flatt
9bc587b53d fix variable initialization in implementation of JIT
svn: r18681
2010-03-30 21:51:20 +00:00
Matthew Flatt
f7afbfa207 fix for non-futures build
svn: r18680
2010-03-30 21:48:13 +00:00
Matthew Flatt
417be5d8e2 move definedness check for imported variable to link time instead of access time; add errortrace meta-language; tweak errortrace to avoid an unnecessary and loop-obscuring annotation; improve slightly bytecode optimizer's handling of w-c-m; improve JIT handling of w-c-m
svn: r18678
2010-03-30 20:21:28 +00:00
Kevin Tew
5695d71ebc [struct.c] convert to char* immutable_array earlier
svn: r18675
2010-03-30 17:56:13 +00:00
Kevin Tew
a10c42a852 simplify _make_struct_type signature
svn: r18674
2010-03-30 17:55:59 +00:00
Matthew Flatt
22ce2af1a7 restore lost adjustment in optimizer that enables lifting of constant functions, especially loop functions
svn: r18664
2010-03-30 00:10:40 +00:00
Matthew Flatt
67cf037da6 fix chaperone-procedure GC bug
svn: r18663
2010-03-29 21:23:13 +00:00
Matthew Flatt
baab09fc1b drop the uglier half of the Mac OS X thread-local variable hack; thread GC state through mark functions (to avoid overhead of thread-local accesses); fix some procedure-arity bugs and work toward fixing chaperones and some other procedure operations on keyword procedures
svn: r18661
2010-03-29 15:06:47 +00:00
Eli Barzilay
8de7c3615a Welcome to a new PLT day.
svn: r18658
2010-03-29 07:50:18 +00:00
Matthew Flatt
b8c3112b98 fix chaperones on parameters
svn: r18654
2010-03-28 15:56:04 +00:00
Matthew Flatt
4ecf61f413 fix chaperone bugs uncovered by 64-bit build
svn: r18651
2010-03-28 02:18:29 +00:00
Matthew Flatt
73807aef24 chaperones (v4.2.5.3)
svn: r18650
2010-03-28 01:10:33 +00:00
Matthew Flatt
17ba04ea4b fix another bug in bytecode optimizer; merge to 4.2.5
svn: r18623
2010-03-26 04:00:48 +00:00
Matthew Flatt
72db535760 fix optimizer bug for inlining procedures under 'let' in rator position
svn: r18622
2010-03-25 20:09:41 +00:00
Noel Welsh
af84b331a1 Add the fx to fl conversion functions to Typed Scheme
Add tests for flonum operations to Typed Scheme test suite

Fix the compiler bug tests above uncovered

svn: r18609
2010-03-24 13:18:37 +00:00
Matthew Flatt
6edf2015c7 tighten JIT code for 'vector-set!'
svn: r18596
2010-03-22 17:43:45 +00:00
Kevin Tew
dedb261ea8 [Places] place-channels are syncable events, place-channel-send/recv, #t and #f are now communicated
svn: r18578
2010-03-18 16:53:16 +00:00