1. 12 Mar, 2014 1 commit
  2. 06 Dec, 2013 1 commit
  3. 28 Nov, 2013 1 commit
    • Kenton Varda's avatar
      Revamp concurrency model, part 1: EventLoop no longer allows cross-thread event… · 7921c854
      Kenton Varda authored
      Revamp concurrency model, part 1:  EventLoop no longer allows cross-thread event queuing, simplifying many things.  Capability clients are no longer thread-safe, so they don't have to be so const.  In the future, explicit ways to communicate between threads will be re-added, but threads will be treated more like separate vats that just happen to have a particularly fat pipe.  Upcoming:  Remove mutexes.
      7921c854
  4. 15 Oct, 2013 1 commit
  5. 12 Oct, 2013 1 commit
  6. 11 Oct, 2013 1 commit
  7. 31 Aug, 2013 1 commit
    • Kenton Varda's avatar
      Actually fix the bug, which was a doozy: OrphanBuilder::tag was sometimes… · a5bb798d
      Kenton Varda authored
      Actually fix the bug, which was a doozy:  OrphanBuilder::tag was sometimes initialized using WirePointer::setKindAndTarget(), but since the tag didn't live inside the target segment, this used illegal pointer arithmetic.  The target is never read from an orphan tag anyway, so I thought it would be no big deal.  But it turns out Clang actually optimizes under the assumption that pointer arithmetic returns a whole value.  As a result, on 32-bit system where 64-bit values are only 32-bit aligned, the tag and target might not have been a whole number of words apart, and the extra bit actually found its way into the 'kind' bits, causing e.g. a struct pointer to become an invalid far pointer.  Crash.  The fix required refactoring to ensure that setKindAndOffset() is never used for orphan tags.
      a5bb798d
  8. 26 Aug, 2013 2 commits
  9. 22 Jul, 2013 1 commit
  10. 18 Jul, 2013 1 commit
  11. 13 Jul, 2013 1 commit
  12. 08 Jul, 2013 1 commit