Joe Groff
9a19f82470
compiler.tree.propagation: missed using
2011-11-13 16:10:25 -08:00
Joe Groff
873208f986
compiler: more peephole tests for shl/sar
2011-11-13 16:10:24 -08:00
Joe Groff
4261d8bb8d
compiler: tighten (simd-select) output class
...
Ints and smaller (or shorts and smaller on 32-bit) can be assumed to be fixnums. Fixes #393
2011-11-13 16:10:23 -08:00
Joe Groff
dd8dda4f48
math.vectors.simd: make vcount work for all ints
2011-11-13 16:10:23 -08:00
Joe Groff
5411a67b22
math.vectors.simd.intrinsics: better fake vgetmask
...
More accurate simulacrum of PMOVMSKB/MOVMSKPS/MOVMSKPD for non-intrinsic definition
2011-11-13 16:10:22 -08:00
Joe Groff
da81cb9035
math.bitwise: don't count the same bits over&over
2011-11-13 16:10:22 -08:00
Joe Groff
706c9ee3b9
math.bitwise: hotrod nonintrinsic fixnum-bit-count
2011-11-13 16:10:21 -08:00
Joe Groff
d79b462f75
compiler: add intrinsic for PMOVMSKB/MOVMSKP[SD]
...
Combined with a fast bit-count this will let us rice byte-counting.
2011-11-13 16:10:20 -08:00
Joe Groff
d1786adfe4
new module images.viewer.prettyprint
...
Pretty-prints image objects as images.
2011-11-13 12:12:23 -08:00
Joe Groff
c4885ac082
vm: fashion police
2011-11-12 23:05:44 -08:00
Joe Groff
c0a44000cc
vm: set stdin_loop cancellation state
...
Make it asynchronous so it doesn't wait till the next syscall to cancel.
2011-11-12 23:05:44 -08:00
Joe Groff
3fc82282f7
vm: close_console before exiting anywhere
...
Add a factor_vm::exit function that does close_console() before ::exit-ing
2011-11-12 23:05:44 -08:00
Philipp Brüschweiler
db19efe1b3
vm: close the console when exiting
...
This prevents an endless loop caused by the nvidia drivers on linux.
See http://www.nvnews.net/vbulletin/showthread.php?t=164619
2011-11-12 23:05:43 -08:00
Slava Pestov
b9a358a1df
classes.struct.vectored: update for recent slots change
2011-11-12 22:41:08 -08:00
Slava Pestov
8783dda864
variants: update for recent slots change
2011-11-12 22:40:55 -08:00
Slava Pestov
910748819d
Now that #foo and ##foo are symbols we can remove a bunch of \
2011-11-12 22:04:26 -08:00
Joe Groff
8e7baef1a0
vm: typo in os-windows.hpp
2011-11-12 19:23:44 -08:00
John Benediktsson
96d5c2fac8
ui.operations: fix stack names.
2011-11-12 18:48:18 -08:00
Doug Coleman
62f652a5a1
io.directories: fix delete-file on windows, add unit test
2011-11-12 18:28:07 -08:00
John Benediktsson
00280a52a4
assocs: 5-8% performance improvement to assoc>map. Fixes #69 .
2011-11-12 17:02:33 -08:00
Slava Pestov
07ef058fb0
Fix bootstrap
2011-11-12 16:45:04 -08:00
John Benediktsson
e10e019f9f
webbrowser: open url's in your webbrowser.
2011-11-12 16:18:52 -08:00
John Benediktsson
340e69aef3
formatting: improve summary.txt.
2011-11-12 16:18:39 -08:00
Slava Pestov
29bc075bc7
hashtables: small cleanup
2011-11-12 15:35:51 -08:00
Slava Pestov
1d257c1ce4
Prevent predicate engine words from showing up in usage. results
2011-11-12 15:35:51 -08:00
Slava Pestov
03d6665166
Fix ambiguity between 'initial: f' and no initial value in a slot spec. Fixes #382
2011-11-12 15:35:51 -08:00
Doug Coleman
67a6a51654
editors: wait 300ms for the run-process to possibly fail so errors are reported if the editor is missing or broken
2011-11-12 15:13:34 -08:00
Doug Coleman
f7ca2446a3
editors.jedit: return "jedit" when looking for jedit path
2011-11-12 14:36:35 -08:00
Doug Coleman
ae61d397c3
factor.sh: Remove the redundant list of commands
2011-11-12 14:06:39 -08:00
Joe Groff
e0dc236725
cpu.*.bootstrap: clear faulting flag directly
...
No reason to go through a safepoint in unwind-native-frames really.
2011-11-12 13:02:57 -08:00
Joe Groff
e24400679f
vm: more defense against multi-faulting
...
* Clear faulting_p from a safepoint rather than inside general_error, because jumping into unwind-native-frames could blow up.
* Handle multiple faults from fatal_error by breakpointing. Is there anything else we can safely do at that point?
* Verify memory protection faults in the top half of the signal handlers because signal dispatch could fault. Treat memory faults during gc or fep as fatal errors.
* Add a function factor_vm::abort() that restores the default SIGABRT handler and ::abort()s. Use it from fatal_error() so we get useful context from gdb and so the user gets feedback from the system crash reporter that Factor blew up and didn't just disappear.
* In factorbug(), don't proceed with .s .r .c if it would be unsafe to do so.
* Don't pile on signals if we've already called fatal_error().
2011-11-12 13:02:57 -08:00
Doug Coleman
6cca0ea468
compiler.cfg: Rename <##foo> to ##foo, in the low-level IR
2011-11-11 19:48:38 -08:00
Doug Coleman
1d84f5e190
benchmark.udp-echo0: Fix the memory leak.
2011-11-11 17:58:45 -08:00
Joe Groff
1c99568492
io.sockets.windows: plug receive-from memory leak
...
Should fix #387 .
2011-11-11 17:56:04 -08:00
Joe Groff
69f35b36aa
math.parser: undo some inlining to shrink size
...
For #318 .
2011-11-11 15:49:53 -08:00
Joe Groff
2c5014e74e
vm: "edges" command for factorbug
2011-11-11 10:12:36 -08:00
Joe Groff
88bbffd838
tools.deploy: label small-enough? tests
...
Put a no-op "vocab name" drop in the small-enough? tests so that it's immediately apparent from build farm errors which vocabs are deploying over the limit.
2011-11-10 19:34:36 -08:00
Joe Groff
316426e1ec
tools.profiler.sampling: better test quots
...
Bump up the iota lengths so the tests don't sporadically fail with no data.
2011-11-10 19:29:20 -08:00
John Benediktsson
7b28e60e0e
hashtables: fix docs for new-key@, and note that quadratic probing is used now.
2011-11-10 16:20:59 -08:00
Joe Groff
3552ade9b1
bootstrap.primitives: remove counting "profiling"
2011-11-10 16:04:42 -08:00
Joe Groff
c31530caec
vm: strip out call-counting profiler
...
This makes the separate "code" and "entry_point" fields in word and quotation redundant, so also remove them to reclaim an additional cell per word and quotation object, which should help with #318 .
2011-11-10 16:01:07 -08:00
Joe Groff
139c9ca38c
init signals or console after stage2 init
...
A signal during early bootstrap is certainly an error, and the environment isn't there yet for Factor's signal handlers to work, so it makes no sense to install Factor's signal handlers beforehand. They'll just crash.
2011-11-10 16:01:07 -08:00
Joe Groff
9e4a51c55f
vm: don't SIGQUIT on unix or Ctrl-Break on windows
...
This gives us an escape hatch for when things go way south and ^C can't be handled. Also unmask SIGQUIT and SIGTERM from the stdin_loop thread so the thread doesn't keep the process alive after those signals.
2011-11-10 16:01:07 -08:00
John Benediktsson
e29c4589c4
hashtables: allow re-using deleted tombstones. Fixes #381 .
2011-11-10 13:05:51 -08:00
Joe Groff
433b8e6b6b
sequences.parser: fix load error
2011-11-10 12:33:10 -08:00
Joe Groff
c8fd36bbdb
kill tools.profiler.counting and ui.tools.profiler
...
Load tools.profiler.sampling from bootstrap/tools instead.
2011-11-10 12:33:10 -08:00
John Benediktsson
27b96452ee
combinators: fix docs for case.
2011-11-10 11:20:28 -08:00
Joe Groff
82e01fb58c
new module typed.namespaces: get/set + type check
2011-11-10 10:47:21 -08:00
Doug Coleman
ab2e4ae5e6
factor.sh: print more docs in usage()
2011-11-09 22:56:59 -08:00
Slava Pestov
98d98ab04a
io.ports: clean up
2011-11-10 00:40:31 -05:00