aboutsummaryrefslogtreecommitdiff
path: root/src/rt/circular_buffer.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Overhaul logging system in runtimeMarijn Haverbeke2011-04-191-18/+12
| | | | | | | | | | | | | | See https://github.com/graydon/rust/wiki/Logging-vision The runtime logging categories are now treated in the same way as modules in compiled code. Each domain now has a log_lvl that can be used to restrict the logging from that domain (will be used to allow logging to be restricted to a single domain). Features dropped (can be brought back to life if there is interest): - Logger indentation - Multiple categories per log statement - I possibly broke some of the color code -- it confuses me
* Move to macro-based logging checks in the C++ codeMarijn Haverbeke2011-04-071-8/+8
| | | | | No functions should be called for log statements that turn out to be inactive.
* Cleanup circular_bufferBrian Anderson2011-01-101-39/+52
|
* Remove the assumption that circular_buffer's buffer has a power of two sizeBrian Anderson2011-01-101-25/+51
| | | | | | It was not obvious how to make this implementation work when the unit size was not also a power of two, so for now just make the buffer size a multiple of the unit size so it can pass all the tests.
* Cleanup circular_buffer grow / shrink routinesBrian Anderson2011-01-101-4/+7
|
* Fix circular_buffer growth when _next != 0Brian Anderson2011-01-101-6/+7
|
* Remove tabsBrian Anderson2011-01-101-1/+1
|
* Don't allow circular_buffer to shrink below its original size when unit_sz ↵Brian Anderson2011-01-101-5/+4
| | | | is not a power of two
* Don't allow circular_buffer to shrink below it's initial sizeBrian Anderson2011-01-101-1/+3
|
* Fix the check for growing the circular_bufferBrian Anderson2011-01-101-1/+1
|
* Correctly initialize circular_buffer to a power-of-two bytesBrian Anderson2011-01-071-1/+2
|
* Un-xfailed working tests.Michael Bebenita2010-08-161-1/+2
|
* Pulled rust_srv in its own file. Some cleanup, and added varargs to ↵Michael Bebenita2010-08-161-1/+1
| | | | assertion macros.
* Ignore upcall_flush for channels that are disassociated from ports. This ↵Michael Bebenita2010-08-111-0/+5
| | | | makes task-comm-10 break a little less hard, but it still leaks because messages pending in the channel are never freed.
* Some pretty printing in the runtime.Michael Bebenita2010-08-091-3/+1
|
* Let circular buffers actually grow to max sz, reset _next when resizing.Michael Bebenita2010-07-281-5/+7
|
* Change unread-on-destroy condition for circular buffer to merely a warning.Michael Bebenita2010-07-281-1/+1
|
* Add comment explaining NULL case in circular_buffer::enqueue and add logging ↵Michael Bebenita2010-07-281-1/+7
| | | | to ::dequeue.
* Add peek method to circular buffer.Michael Bebenita2010-07-281-0/+5
|
* Change _unit_sz to unit_sz and make public in circular_buffer.Michael Bebenita2010-07-281-14/+15
|
* Make circular buffer use only power-of-two sizes, cheaper arithmetic.Michael Bebenita2010-07-281-2/+12
|
* Fixed circular buffer resizing bug.Michael Bebenita2010-07-191-16/+20
|
* Added a message passing system based on lock free queues for inter-thread ↵Michael Bebenita2010-07-191-0/+118
communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.