racket/collects
Matthew Flatt 7ad1ddab64 fix bytecode compiler safefor-space, tigher bytecode validation
The safe-for-space pass could add clearing operations on "typed"
stack positions, which are known to contain a fixnum, flonum, or
extflonum. Non-clearing references, however, were not annotated to
indicate that clearing references were present, since clearing is
not expected on typed positions.

Along the lines of not expecting clearing, the bytecode validator's
encoding of the stack doesn't accomodate both "has a type" and "claims
never to be cleared", so it couldn't detect the bytecode compiler
bug. (Also, this problem didn't show up in the HOSC paper's model of
the validator, because the model pre-dates type tracking.)

Fix the bytecode compiler's space-safety pass so that it never inserts
clearing operations for typed stack positions. Then, the validator can
simply reject any attempt to clear a typed position.

Also, annotate applications generated by lifting as safe-for-space
tail calls.

Merge to v5.3.4
2013-04-26 22:47:42 -06:00
..
2htdp bring code to old state, make consistent with docs, Closes PR 13642 again 2013-04-01 12:10:27 -04:00
algol60 Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
at-exp/lang
browser
compatibility
compiler raco dist: update ELF section when adjusting data size 2013-04-24 19:00:24 -06:00
config
data performance tweaks for `for/{fx,fl,extfl}vector' 2013-04-10 17:26:38 -06:00
datalog Removing even/odd reading hack and just protecting parser from eof-ing ports 2013-03-19 08:58:41 -06:00
db
defaults
deinprogramm Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
drracket more fixes for recent datastructure change 2013-04-26 19:44:13 -05:00
drscheme
dynext
embedded-gui Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
eopl Some style things. 2013-02-23 02:09:56 -05:00
errortrace
ffi ffi/unsafe/objc: remove -A'/+A', add `#:async-apply' 2013-04-23 13:48:15 -06:00
file file/gunzip: fix problem with lookahead handling 2013-04-24 09:57:47 -06:00
framework fix improper fraction display 2013-04-08 13:40:55 -05:00
frtime Fix CRLF-ed file. 2013-03-14 11:01:10 -04:00
future-visualizer Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
games adjust pick-a-maze based on Neil's comments 2013-04-08 16:09:55 -05:00
graphics
gui-debugger Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
help add File|New, File|Open... and File|Open Recent menu items to the 2013-04-16 18:40:48 -05:00
hierlist
honu Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
htdp
html
icons
images
json polarity flip in type error messages 2013-03-22 10:20:40 -07:00
lang reformat error message for implode, Closes PR 13690 2013-04-12 16:25:20 -04:00
launcher raco setup: put launchers for user collections in user space 2013-04-24 12:11:42 -06:00
lazy
macro-debugger fix show-dependencies handling of submodules 2013-03-30 10:00:44 -04:00
make
math Don't let map introduce type variables. 2013-04-24 20:13:39 -07:00
meta pkg catalog sever: get dependencies and implemented modules on update 2013-04-26 10:27:51 -06:00
mred racket/gui gtk: preserve button font on label change 2013-04-25 06:05:22 -06:00
mrlib mrlib/terminal: create embedded terminal in a container sequence 2013-04-20 09:38:56 -06:00
mysterx ffi/com: repairs for parameterized-property setting and for date values 2013-04-16 10:02:37 -06:00
mzcom
mzlib Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
mzscheme
net Add optional message flags argument to imap-append. 2013-04-23 15:49:22 -06:00
openssl Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
parser-tools Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
picturing-programs Corrected error messages in test file to match new wordings. 2013-04-22 20:08:47 -04:00
pkg raco pkg: don't consult GitHub if checksum is given 2013-04-26 16:28:28 -06:00
plai plai/{gc2/}mutator: doc fixes 2013-04-10 06:59:33 -06:00
planet used the wrong dir when checking the info.rkt santity 2013-03-01 19:38:57 -06:00
plot
preprocessor
profile Error message typo. 2013-04-05 16:47:11 -04:00
r5rs
r6rs Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
racket make opt/c contract follow the blame-add-context protocol 2013-04-26 19:44:13 -05:00
racklog Removing even/odd reading hack and just protecting parser from eof-ing ports 2013-03-19 08:58:41 -06:00
rackunit Used syntax/modcode in rackunit/docs-complete. 2013-03-26 19:50:33 -04:00
raco
reader/lang
readline readline: explicitly load "libncurses" 2013-03-10 07:20:38 -06:00
realm die to dice 2013-04-12 13:17:22 -04:00
redex redex: unfold nts once during unification 2013-04-23 13:26:15 -05:00
repo-time-stamp
rnrs Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
s-exp/lang
scheme
schemeunit
scribble scribble/manual: add #:link-target?' to defproc', `defform', etc. 2013-04-21 09:49:14 -06:00
scribblings update kernel parameter checks to new error-message format 2013-04-25 16:46:23 -06:00
scriblib scriblib/footnote: fix for non-Latex output 2013-03-29 07:23:49 -06:00
setup raco setup: put launchers for user collections in user space 2013-04-24 12:11:42 -06:00
sgl Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
slatex
slideshow slideshow: add `--clock' option 2013-03-21 08:51:09 -06:00
srfi Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
stepper Fix lots of indentation mistakes. 2013-03-14 10:55:47 -04:00
string-constants pkg/gui: first cut at a GUI package manager 2013-04-23 14:05:20 -06:00
swindle
syntax Revert "IN PROGRESS: add opt/c to with-contract and provide/contract" 2013-04-25 18:14:21 -05:00
syntax-color syntax-color/racket-lexer: update for single-precision and extflonums 2013-03-29 07:23:49 -06:00
teachpack bring code to old state, make consistent with docs, Closes PR 13642 again 2013-04-01 12:10:27 -04:00
test-engine
tests fix bytecode compiler safefor-space, tigher bytecode validation 2013-04-26 22:47:42 -06:00
texpict slideshow/pict: allow a color in a style for `text' 2013-03-27 17:17:33 -06:00
trace
typed Adjust type for dns-get-address 2013-04-04 16:11:28 -04:00
typed-racket Document VectorTop and HashTableTop. 2013-04-26 12:27:02 -04:00
typed-scheme
unstable add missing requires 2013-04-26 10:26:03 -05:00
version
web-server Normalize max-waiting contracts 2013-04-11 08:33:29 -06:00
wxme
xml Fixing PR13683 2013-04-11 08:33:29 -06:00
xrepl Improve some printouts. 2013-04-17 16:39:10 -04:00
.gitignore