- 12 Mar, 2014 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
Make it possible for a message builder to incorporate a byte array not owned by it without copying. Useful for injecting large data blobs into a message without copying their contents. Access this functionality through the Orphanage interface.
-
- 07 Dec, 2013 1 commit
-
-
Kenton Varda authored
-
- 05 Dec, 2013 1 commit
-
-
Kenton Varda authored
-
- 12 Nov, 2013 1 commit
-
-
Kenton Varda authored
Allow implicit conversion from Orphan<T> to Orphan<DynamicStruct/DynamicList/DynamicCapability> where applicable.
-
- 24 Sep, 2013 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
Revamp generated interface to Object fields. Now there is an ObjectPointer::{Reader,Builder}. This will simplify the dynamic API (next change) and also makes it easier to delegate decisions about the object type to a function that doesn't know about the context where the object lives (i.e. by passing an ObjectPointer::Builder).
-
- 31 Aug, 2013 1 commit
-
-
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.
-
- 26 Aug, 2013 2 commits
-
-
Kenton Varda authored
-
Kenton Varda authored
-
- 14 Aug, 2013 1 commit
-
-
Kenton Varda authored
-
- 18 Jul, 2013 1 commit
-
-
Kenton Varda authored
-
- 15 Jul, 2013 1 commit
-
-
Kenton Varda authored
-
- 09 Jul, 2013 1 commit
-
-
Kenton Varda authored
-
- 08 Jul, 2013 1 commit
-
-
Kenton Varda authored
-