about summary refs log tree commit diff
path: root/src/rt/rust_upcall.cpp
AgeCommit message (Collapse)AuthorLines
2010-09-03When vec growth results in a newly allocated (extended) buffer, copy ↵Roy Frostig-9/+26
existing elements over via element-wise copy, not flat memcpy. Introduce new vec growth glue to achieve this.
2010-08-31Whitespace churn.Graydon Hoare-38/+63
2010-08-31Fix rust_vec constructor assertion failure caused by slow path of ↵Roy Frostig-2/+3
upcall_vec_grow. Add testcase.
2010-08-17Added labels to blocking conditions.Michael Bebenita-3/+3
2010-08-17Fixed deadlock by removing channel flushing.Michael Bebenita-25/+14
2010-08-11Added support for task sleeping in the scheduler.Michael Bebenita-0/+8
2010-08-11Ignore upcall_flush for channels that are disassociated from ports. This ↵Michael Bebenita-0/+8
makes task-comm-10 break a little less hard, but it still leaks because messages pending in the channel are never freed.
2010-08-10Merge commit 'jyasskin/work'Graydon Hoare-23/+27
Conflicts: src/rt/rust_dom.cpp src/rt/rust_upcall.cpp
2010-08-09Synthesize a flush_chan upcall right before a channel's ref_count drops to ↵Michael Bebenita-26/+42
zero. This should only happen in the Rust code and not in the drop glue, or on the unwind path. This change allows the task owning the channel to block on a flush and delete its own channel. This change also cleans up some code around rust_port and rust_chan.
2010-08-09Some pretty printing in the runtime.Michael Bebenita-5/+21
2010-08-09Add names to tasks and domains. These can either be an explicit literal stringJeffrey Yasskin-23/+27
after the "spawn" keyword, or implicitly the call expression used to start the spawn.
2010-07-28Move ports out into their own file, add data_message and make communication ↵Michael Bebenita-17/+34
system use it (and proxies) instead of existing token scheme.
2010-07-28Move notification-messages out into their own file and unify into ↵Michael Bebenita-21/+25
notify_message, make them use proxies, cache task proxies in dom.
2010-07-28Rename rust_proxy_delegate to maybe_proxy, flesh out logic in it. Add ↵Michael Bebenita-8/+9
strong-ref distinction on rust_proxy.
2010-07-28Fix typos in comments, delete obsolete comments and dead commented code.Michael Bebenita-64/+1
2010-07-28Test the deque a bit. Give it a get-by-index method. Fix two uncovered ↵Roy Frostig-2/+7
state-calculation bugs --- one decently, the other with an ugly hack. Bug on the latter coming right up.
2010-07-22Back out too-platform-fussy bits in preempt-test work. I hate this test.Graydon Hoare-3/+0
2010-07-22Beat up on the preempt test a bit more, as it keeps hanging under valgrind.Graydon Hoare-2/+5
2010-07-19Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita-330/+270
communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.
2010-07-15Fix a couple fails with wrong arg count (new arg from last gc change); ↵Graydon Hoare-3/+5
expand vec_grow logging a bit.
2010-07-04Fix typo in upcall_recv log message.Graydon Hoare-1/+1
2010-07-02Improve logging on upcall_malloc.Graydon Hoare-2/+7
2010-06-28Move more of the GC logic into the runtime.Graydon Hoare-10/+29
2010-06-23Populate tree.Graydon Hoare-0/+654