Joe Groff
12c569e3a7
vm: verifier shouldn't check for leftovers
...
It doesn't work after things have been freed
2011-12-14 09:56:45 -08:00
Joe Groff
14e0c9f482
vm: pack frame size into code block header bits
2011-12-14 09:56:45 -08:00
Joe Groff
84e817ef95
compiler.constants: remove unused constants
2011-12-14 09:56:45 -08:00
Joe Groff
9186a1bdf3
vm: store stack frame size in code blocks
...
Change modify-code-heap primitive so it takes a sixth element in each array for the frame size.
2011-12-14 09:56:45 -08:00
Joe Groff
3365e1adbb
math.vectors: add higher-order stack effect to vif
2011-12-13 19:46:44 -08:00
Joe Groff
06a87c41d6
vm: erase code blocks from all_blocks during sweep
...
Fixes #437
2011-12-13 12:28:09 -08:00
Joe Groff
8f8873c859
vm: reinitialize all_blocks from scratch after gc
...
Faster and more likely to be correct than trying to fixup the existing set
2011-12-12 19:05:48 -08:00
Joe Groff
857b52401c
vm: only verify all_blocks set if it's invalid
...
Verifying on every sample is way too slow to be practical when debugging bootstrap.
2011-12-12 19:04:56 -08:00
Joe Groff
f51e262e44
vm: add compact-gc command to factorbug
2011-12-12 19:03:42 -08:00
Joe Groff
819e1602be
cpu.x86: enable POPCNT with a flag
...
If bootstrapped with '-enable-popcnt' and the host CPU supports it, enable the POPCNT-based fixnum-bit-count intrinsic. Fixes #436 .
2011-12-12 16:43:49 -08:00
Joe Groff
a6b4d30378
tools.deploy.shaker: more timid global stripping
...
Strip globals by replacing their value with "f". The list of globals to strip was written with the assumption that the stripped globals would get restored like normal hashtable keys when accessed. This isn't valid anymore with the globals optimization, since creating a new box breaks the foldable invariant between a global name and its associated box. Need to go through the list of globals to strip and find the ones that actually can be entirely removed as opposed to just reset to f. Fixes #445 . Fixes #446 .
2011-12-12 16:08:25 -08:00
rien
f15ef329a0
added B: (break for parsing words) and appropriate documentation
2011-12-10 20:59:22 -05:00
rien
3b52a5ae6e
fixed effect based on inner behavior and outer context
2011-12-10 19:47:34 -05:00
Joe Groff
30dc7d45e7
math.vectors.simd.intrinsics: fix deploy bug
...
If not called with a known-at-compile-time SIMD type, the intrinsic definitions were leaving behind runtime quotations that referenced the c-array words after c-type information had been stripped, causing deployed applications that used SIMD to fail.
2011-12-07 12:47:38 -08:00
Doug Coleman
5fb4b86fbf
help-lint fixes for recent changes
2011-12-07 12:26:35 -08:00
Joe Groff
7dbdc54052
command-line: don't pull in tools.errors
...
tools.errors brings the debugger with it, which bloats deploy image size
2011-12-07 10:52:58 -08:00
Joe Groff
ba860e27a9
regexp.parser: fix failing test
2011-12-06 21:11:58 -08:00
Joe Groff
881f9ba3f1
compiler: fix failing test
2011-12-06 21:11:44 -08:00
Samuel Tardieu
097016d5cb
lazy.lists: lfrom-by documentation fix
...
Also add a unit test for lfrom-by.
2011-12-06 21:08:16 +01:00
Philipp Brüschweiler
7dded87bf1
ui.backend.gtk: don't die if the icon doesn't exist, partially fixes #369
2011-12-06 09:05:05 +01:00
Doug Coleman
e884ce357e
compiler: The non-optimizing compiler is too slow with smart combinators in the compiler. Speed up bootstrap by not using them.
2011-12-05 14:50:51 -08:00
Slava Pestov
91e345456e
help.html: change back to the old naming scheme because we have too many links to existing doc articles all over the net
2011-12-04 13:46:13 -08:00
Doug Coleman
d5ccd7605a
memoize: Don't use identity hashtables for macro expansion; it uses all the memory. Fixes #439 .
2011-12-01 10:14:16 -08:00
Doug Coleman
64886491e4
bootstrap/stage1: Turn off parser-quiet? flag sooner so the files loaded in the USING: list in stage2 print a loading message.
2011-11-30 23:15:43 -08:00
Doug Coleman
5a0f1904b4
basis/*: Pare down some using lists
2011-11-30 23:15:43 -08:00
Doug Coleman
77d7865cbf
tools.profiler.sampling: Don't use calendar because it pulls in ratios
2011-11-30 23:15:43 -08:00
Doug Coleman
171e539b6a
memoize: Use identity hashtables for macros
2011-11-30 23:15:42 -08:00
Doug Coleman
5a01aec362
combinators.smart: Tell the stack checker that the return values from inputs/ouputs are input-parameters
...
Fixes #435
2011-11-30 23:15:42 -08:00
Doug Coleman
c3dcf43e03
core/basis: trim down using lists
2011-11-30 23:15:42 -08:00
Joe Groff
4e91f856d6
furnace.auth.providers.couchdb: fix manifest
2011-11-30 17:58:52 -08:00
Doug Coleman
cf91cef222
combinators.smart: Use an identity memoize on inputs/outputs word to speed up the non-optimizing compiler
2011-11-30 14:41:32 -08:00
Doug Coleman
d3af3dcdcf
memoize: implement identity memoize, trim using lists so bootstrap continues to work
2011-11-30 14:41:32 -08:00
Joe Groff
10eefb77ee
io.encodings.iana: remove values
2011-11-29 13:22:23 -08:00
Joe Groff
9f5820fc23
xml.entities: remove USING: values
2011-11-29 12:21:08 -08:00
Joe Groff
88c0a0e2ea
vm: fix msvc warning
2011-11-29 12:19:17 -08:00
Joe Groff
fdc9e2b076
io.sockets: remove unneeded USING: values
2011-11-29 09:46:51 -08:00
Joe Groff
755484ce63
remove values vocab
2011-11-28 21:26:33 -08:00
Doug Coleman
5401559b4c
combinators.smart: Fix infer-known; should be 100% now.
...
It's stack-checker bugs all the way down.
2011-11-28 20:55:11 -08:00
Doug Coleman
10387f8df9
combinators.smart: Implement reduce-outputs using compose, fix some stack effects, add using
2011-11-28 20:55:10 -08:00
Joe Groff
ac86f90c02
io.directories.unix: remove redundant using
2011-11-28 20:36:46 -08:00
Joe Groff
b50ffc6da0
io: implement stream protocols on f
...
Fixes deployed applications that write to output-stream
2011-11-28 20:36:34 -08:00
Joe Groff
98861a7c81
io.files.info: fix circularity
...
Remove the undocumented and redundant "copy-file-and-info" word, since "copy-file" does the same thing, and the circular dependency on "io.directories" was causing some deploys to fail
2011-11-28 19:37:01 -08:00
Joe Groff
61c0d6badf
fastcgi: fix load and compile errors
2011-11-28 18:56:00 -08:00
Joe Groff
9ec3376aa5
benchmark.regex-dna: reduce IO deploy level again
2011-11-28 18:55:48 -08:00
Joe Groff
e516accf18
specialized-arrays: update tests
2011-11-28 18:55:20 -08:00
Joe Groff
628b7b1812
furnace.auth.providers.couchdb: fix load error
2011-11-28 18:55:11 -08:00
Joe Groff
cad8128b3e
namespaces: rework so a singleton isn't necessary
...
Make global foldable, and make the underlying global object a hashtable wrapper. Also, use a tuple instead of a generic array for the global box type.
2011-11-28 18:25:27 -08:00
Joe Groff
c1c8155468
namespaces: make set-global/get-global foldable
...
Store the globals hashtable as an array of boxes so that the key-to-reference mapping is constant. Use a singleton and an unfoldable "box-at" word so that get-global and set-global optimize to direct operations on the associated box when the variable name is a compile-time constant. Fixes #200 .
2011-11-28 18:25:27 -08:00
Doug Coleman
2e6cfa41da
combinators.smart: Enable a unit test, handle M: object infer-known*, make sum-outputs a macro.
...
Fixes inverse but still needs work, once I figure out how.
2011-11-28 14:36:57 -08:00
Doug Coleman
a3447b49b9
combinators.smart: Fix reduce-outputs, rename quot*n to call-n, rewrite more macros as combinators.
2011-11-28 12:41:50 -08:00