Commit Graph

9912 Commits (2f0efb62e87c8e1f45d967ee2986b51ccc12c7b7)

Author SHA1 Message Date
John Benediktsson 48205fcb63 deques: adding ?peek-front and ?peek-back. 2011-11-08 13:20:56 -08:00
Joe Groff 70dcd875ff io.backend: start signal thread after io-backend
The c-io-backend can't handle input-ports and raises an error during bootstrap.
2011-11-08 11:54:54 -08:00
Joe Groff afa0ed1f6e unix.process: take raise from unix.ffi
And fix introduced ambiguity between unix.ffi:kill and unix.process:kill
2011-11-08 10:42:51 -08:00
Joe Groff 37494b301b new module unix.signals: app-level signal handlers
example:

IN: scratchpad USING: unix.ffi unix.signals ;
Loading resource:basis/unix/signals/signals.factor
IN: scratchpad [ V{ "Me not that kind of orc!" "Me busy, leave me alone!" "Work work" "Zug zug" } pop print flush ] SIGINFO add-signal-handler
IN: scratchpad load: 0.60  cmd: factor 41541 running 0.28u 0.16s
Zug zug
load: 0.71  cmd: factor 41541 running 0.28u 0.16s
Work work
load: 0.71  cmd: factor 41541 running 0.28u 0.16s
Me busy, leave me alone!
load: 0.73  cmd: factor 41541 running 0.28u 0.16s
Me not that kind of orc!
2011-11-08 10:21:49 -08:00
Joe Groff ec85bf7acc io.backend.unix: startup hook for signal-pipe 2011-11-08 08:42:48 -08:00
Joe Groff b3598c2384 io.backend.unix: init-signal-pipe function
Currently just reads off signal numbers and drops them.
2011-11-08 08:42:48 -08:00
Joe Groff 1583b94bf9 io.launcher.windows: update tests for prompt 2011-11-08 00:09:25 -08:00
Joe Groff c79ef17deb lists: make lmap behave row-polymorphically
Fix contributed by @bremac. Fixes #355.
2011-11-07 10:37:35 -08:00
Doug Coleman cb66728b26 compiler.cfg: Change low-level IR constructors from ##foo to <##foo> 2011-11-06 23:02:46 -08:00
Doug Coleman 1a2be52f25 compiler.tree: Renamed high-level IR node constructors to <#foo> from #foo. Moving towards making classes/word names not conflict. 2011-11-06 23:02:45 -08:00
Doug Coleman dde0599353 math.functions: flushable and foldable don't do anything on inline words because flushable and foldable work on call sites (#call nodes), and inlined words are inlined into another word's call site; they don't generate their own #call node. 2011-11-06 19:25:53 -08:00
Doug Coleman 1539682597 compiler.tree.dead-code: Rewrite /mod to /i or mod in the dead-code pass in the high level optimizer. Fixes #279. 2011-11-06 19:23:26 -08:00
Joe Groff 830a7f7100 tools.deploy.backend: fix vocab manifest parse
We were absent-mindedly passing the VOCABS: line off as a vocab name itself. vocabs.loader doesn't put up with that anymore.
2011-11-06 18:57:12 -08:00
Doug Coleman be9f8a99f0 Rename lookup to lookup-word. 2011-11-06 16:00:00 -08:00
Doug Coleman d580d8fc01 html.components: For the t:html tag, only wrap strings in unescaped so that other objects can render. 2011-11-06 12:15:00 -08:00
Doug Coleman 1f9dccb223 help.html: fix glossary link. 2011-11-05 00:05:58 -07:00
Doug Coleman 16e1dee457 Make edit-vocab work on an unloaded vocabulary. 2011-11-04 23:33:18 -07:00
Joe Groff c78b4d7f60 cpu.x86.*.bootstrap: save flags in signal-handlers 2011-11-04 11:56:01 -07:00
Joe Groff db1a47ffc1 cpu.x86.bootstrap: cell -> bootstrap-cell 2011-11-04 11:54:40 -07:00
Joe Groff a944e41e79 cpu.x86.assembler: PUSHF, POPF instructions 2011-11-04 11:23:11 -07:00
Joe Groff d4f24f44c3 cpu.x86.64.bootstrap: save all the regs on signal
Appears to fix another sporadic crash from mason on x86-64. There's no reason to cut corners here, really.
2011-11-04 10:01:56 -07:00
Doug Coleman a3ceb95060 Fix bootstrap. Add missing using on io.serial.linux. Fixes #351. 2011-11-04 06:08:02 -07:00
Joe Groff 88dbe09c4c unix.ffi: add signal constants 2011-11-04 00:24:18 -07:00
Joe Groff a28192859a cpu.x86.bootstrap: don't safepoint in a safepoint
Safepointing in the signal-handler primitive causes a crash if the safepoint is guarded and the signal being handled was raised by a safepoint. Put our own RET in the subprimitive to bail out before the standard epilog gets written out. This tentatively appears to fix #349.
2011-11-03 20:19:38 -07:00
Joe Groff 82bdb6a65a stack-checker.known-words: add ffi-signal-handlers 2011-11-03 15:20:42 -07:00
Joe Groff 1155da01c9 cpu.x86.32.bootstrap: typo 2011-11-03 13:07:13 -07:00
Doug Coleman 584f773a0b Update emacs for editors protocol. 2011-11-03 12:04:02 -07:00
Joe Groff 7ac94bd09f vm: always generate safepoints in jit
Even if there's no stack frame we still need to safepoint before leaving the function. Fixes #332.
2011-11-03 11:57:43 -07:00
Joe Groff de081931fe tools.profiler.sampling: mess with formatting more 2011-11-03 00:14:18 -07:00
Joe Groff de8d4199b2 tools.profiler.sampling: cross-section report
Also add depth to top-down reporting so we can tell what parameter to give cross-section
2011-11-02 23:57:15 -07:00
Joe Groff 1dc540f60e vm: reserve some more special-objects
Need a jit-safepoint object to deal with #332, and ffi-signal-handler words for immediate signal handling during FFI calls
2011-11-02 22:16:08 -07:00
Doug Coleman 0b39b540e7 dlists: fix compile error 2011-11-02 21:57:31 -07:00
Joe Groff 2c040c3ef6 tools.profiler.sampling: twiddle output format 2011-11-02 21:40:53 -07:00
Doug Coleman 89accfb573 Tweak the dlist equal? word. 2011-11-02 19:53:40 -07:00
Doug Coleman 3d2c4a0165 Implement equal? on dlists. Fixes #338. 2011-11-02 19:30:54 -07:00
Joe Groff eb711a5e73 images.loader.gtk: typo 2011-11-02 19:02:27 -07:00
Joe Groff aaf2b14306 remove lingering mentions of macosx-ppc 2011-11-02 18:40:27 -07:00
Doug Coleman 484836be3a Rename (load-vocab) to (require), add tags.txt for "p" vocab loader test. Code formatting. 2011-11-02 18:07:22 -07:00
Doug Coleman b36e806eaf io.backend.unix.macosx: Remove duplicate USE: 2011-11-02 17:47:15 -07:00
Doug Coleman a8395ae332 Fix unit tests to give the sampling profiler something to profile. 2011-11-02 17:46:50 -07:00
Doug Coleman 644b5fca16 Fix require-hook 2011-11-02 17:26:13 -07:00
Doug Coleman a6cbdaf48b Add stack effects for the sampling profiler 2011-11-02 17:26:13 -07:00
Joe Groff 75cba3106a remove BSD,solaris,etc. misc platform support code 2011-11-02 17:13:51 -07:00
Doug Coleman ee0d0f6579 Unbreakify the new profiler, add a couple of unit tests to demonstrate displaying output. 2011-11-02 17:01:43 -07:00
Doug Coleman 8f02a716ee Keep the profiling results even when the quotation throws an exception. 2011-11-02 16:47:27 -07:00
Doug Coleman b3d381277a Use -reuseview in jedit by default. 2011-11-02 16:47:10 -07:00
Doug Coleman 86974b11a2 Clean up formatting, rename load-vocab-hook to require-hook. Add a unit test for vocabs.loader. 2011-11-02 16:31:42 -07:00
Doug Coleman 9425402c71 Actually let the user pick an editor after editor protocol change. 2011-11-02 16:05:39 -07:00
Joe Groff 6b2a34fdc6 vm: count samples during unoptimized compiler 2011-11-02 13:23:21 -07:00
Joe Groff 76cf62687f hashtables.identity: test assoc-like 2011-11-02 13:23:20 -07:00