Age | Commit message (Collapse) | Author | |
---|---|---|---|
2011-02-18 | Change the API for getting the bootstrapped defs. | Joshua Haberman | |
The symtab that contains them is now hidden, and you can look them up by name but there is no access to the symtab itself, so there is no risk of mutating it (by extending it, adding other defs to it, etc). | |||
2011-02-18 | Fix efficiency bug for major (50% performance improvement! | Joshua Haberman | |
There was a bug with string referencing that prevented strings from being recycled as often as they ought to be. | |||
2011-02-17 | Return updated buf as second return value, to free up a reg. | Joshua Haberman | |
2011-02-17 | First version of an assembly language decoder. | Joshua Haberman | |
It is slower than the C decoder for now because it falls off the fast path too often. But it can successfully decode varints, fixed32 and fixed64. | |||
2011-02-17 | Split inttable into a hash part and an array part. | Joshua Haberman | |
upb_inttable() now supports a "compact" operation that will decide on an array size and put all entries with small enough keys into the array part for faster lookup. Also exposed the upb_itof_ent structure and put a few useful values there, so they are one fewer pointer chase away. | |||
2011-02-17 | Track buffer end instead of buffer length, for a small perf improvement. | Joshua Haberman | |
2011-02-15 | Remove upb_dstate and specialize upb_decode_fixed for perf improvement. | Joshua Haberman | |
The compiler wasn't keeping upb_dstate in memory anyway (which was the original goal). This simplifies the decoder. upb_decode_fixed was intended to minimize the number of branches, but since it was calling out to memcpy as a function, this turned out to be a pessimization. Performance is encouraging: plain32.parsestream_googlemessage1.upb_table: 254 -> 242 (-4.72) plain32.parsestream_googlemessage2.upb_table: 357 -> 400 (12.04) plain32.parsetostruct_googlemessage1.upb_table_byref: 143 -> 144 (0.70) plain32.parsetostruct_googlemessage1.upb_table_byval: 122 -> 118 (-3.28) plain32.parsetostruct_googlemessage2.upb_table_byref: 189 -> 200 (5.82) plain32.parsetostruct_googlemessage2.upb_table_byval: 198 -> 200 (1.01) omitfp32.parsestream_googlemessage1.upb_table: 267 -> 265 (-0.75) omitfp32.parsestream_googlemessage2.upb_table: 377 -> 465 (23.34) omitfp32.parsetostruct_googlemessage1.upb_table_byref: 140 -> 151 (7.86) omitfp32.parsetostruct_googlemessage1.upb_table_byval: 131 -> 131 (0.00) omitfp32.parsetostruct_googlemessage2.upb_table_byref: 204 -> 214 (4.90) omitfp32.parsetostruct_googlemessage2.upb_table_byval: 200 -> 206 (3.00) plain.parsestream_googlemessage1.upb_table: 313 -> 317 (1.28) plain.parsestream_googlemessage2.upb_table: 476 -> 541 (13.66) plain.parsetostruct_googlemessage1.upb_table_byref: 189 -> 189 (0.00) plain.parsetostruct_googlemessage1.upb_table_byval: 165 -> 165 (0.00) plain.parsetostruct_googlemessage2.upb_table_byref: 263 -> 270 (2.66) plain.parsetostruct_googlemessage2.upb_table_byval: 248 -> 255 (2.82) omitfp.parsestream_googlemessage1.upb_table: 306 -> 305 (-0.33) omitfp.parsestream_googlemessage2.upb_table: 471 -> 531 (12.74) omitfp.parsetostruct_googlemessage1.upb_table_byref: 189 -> 190 (0.53) omitfp.parsetostruct_googlemessage1.upb_table_byval: 166 -> 172 (3.61) omitfp.parsetostruct_googlemessage2.upb_table_byref: 258 -> 270 (4.65) omitfp.parsetostruct_googlemessage2.upb_table_byval: 248 -> 265 (6.85) | |||
2011-02-15 | Make -DUPB_THREAD_UNSAFE the default for now. | Joshua Haberman | |
2011-02-14 | Recover bad performance of 0-keyed tables. | Joshua Haberman | |
We do this by special-casing the (unusual) zero case and only bother checking the is_empty bit in the zero case. | |||
2011-02-14 | Update to latest descriptor.proto. | Joshua Haberman | |
2011-02-14 | More completely fixed the 0-key thing. | Joshua Haberman | |
Unfortunately this degrades hash table lookup performance by about 8%, which affects the streaming benchmark for googlemessage1 by about 5%. We could get this back at the cost of some memory, but it would be nice to avoid that. | |||
2011-02-14 | Remove the restriction that 0 cannot be a table key. | Joshua Haberman | |
This fixes issue: http://code.google.com/p/upb/issues/detail?id=1 | |||
2011-02-14 | Add warning about upcoming delegation changes. | Joshua Haberman | |
2011-02-13 | Added proper error about broken 0-values for enums. | Joshua Haberman | |
2011-02-13 | Moved upbc -> src/ | Joshua Haberman | |
2011-02-13 | Fix upbc and descriptorgen, and update descriptor. | Joshua Haberman | |
2011-02-13 | Cleanup Makefile and mv descriptor/ -> src/ | Joshua Haberman | |
2011-02-13 | Merged core/ and stream/ -> src/. The split wasn't worth it. | Joshua Haberman | |
2010-07-09 | Split src/ into core/ and stream/. | Joshua Haberman | |
2010-07-09 | Add upb_string.c. | Joshua Haberman | |
2010-07-09 | Strip out some stuff that's not currently being used. | Joshua Haberman | |
2010-07-09 | Dynamically allocate string for error msg. | Joshua Haberman | |
2010-07-09 | Tweaks to upb_src/upb_sink interfaces. | Joshua Haberman | |
2010-07-07 | Defined the function for getting a upb_symtab for descriptor.proto. | Joshua Haberman | |
2010-07-03 | Implemented upb_baredecoder, for bootstrapping. | Joshua Haberman | |
2010-07-03 | upb_def now theoretically works again. | Joshua Haberman | |
2010-07-03 | Implement upb_deflist_qualify. | Joshua Haberman | |
2010-07-03 | More work on upb_def. | Joshua Haberman | |
2010-07-03 | More work on upb_def. | Joshua Haberman | |
2010-06-27 | upb_def compiles again, though with lots of #if 0. | Joshua Haberman | |
2010-06-26 | Incremental progress on upb_def. | Joshua Haberman | |
2010-06-14 | Work to make upb_def consume a upb_src. | Joshua Haberman | |
2010-06-12 | Decoder is finally complete, now just needs testing. | Joshua Haberman | |
2010-06-11 | More decoder work. | Joshua Haberman | |
2010-06-11 | Work on decoder buffering. | Joshua Haberman | |
2010-06-10 | Yet more. | Joshua Haberman | |
2010-06-10 | More decoder work. | Joshua Haberman | |
2010-06-10 | More decoder work. | Joshua Haberman | |
2010-06-10 | Implement proper type checking again. | Joshua Haberman | |
2010-06-09 | Decoder compiler but doesn't work yet. | Joshua Haberman | |
2010-06-09 | More decoder work, first attempts at compiling it. | Joshua Haberman | |
2010-06-09 | More work on upb_decoder. | Joshua Haberman | |
2010-06-07 | Skeleton of upb_bytesrc. | Joshua Haberman | |
2010-06-07 | More work on the decoder. | Joshua Haberman | |
2010-06-07 | Changes to upb_def to stop using upb_msg. | Joshua Haberman | |
2010-06-05 | More work on the decoder. | Joshua Haberman | |
2010-06-03 | More incremental work. | Joshua Haberman | |
2010-06-03 | WIP: intrusive changes to upb_decoder. | Joshua Haberman | |
2010-05-27 | Revisions to src and sink interfaces. | Joshua Haberman | |
2010-05-24 | Defined the upb_src and upb_bytesrc interfaces. | Joshua Haberman | |