summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-09-01Added lua and core32 Travis builds, and rewrote README.mdJosh Haberman
2014-09-01Added compiled version of test.proto.Josh Haberman
This avoids requiring protoc to be installed just to build/run the basic tests. When upb has its own .proto file parser we should be able to remove this precompiled version from the repository.
2014-09-01Enable more Travis configurations.Josh Haberman
2014-08-31Rewrite of build system.Josh Haberman
Notable changes: - We now only build things by default that require no dependencies. So you can build upb even if you don't have Lua or Google protobuf installed. - Checked in a pre-built version of the JIT, so you don't need Lua installed at build time to run DynASM. It will still notice if you change the .dasc file and attempt to re-run DynASM in that case. - The build system now builds all modules of upb into separate libraries, reflecting the modularity that is already inherent in upb's design. This should make it easier to trim the fat. - removed the GDB JIT interface. I wasn't using it much; using a .so is easier and more robust.
2014-08-30Fix in test_cpp for bad macro expansion.Josh Haberman
2014-08-30Fixed build and added Travis CI support.Josh Haberman
2014-08-09Added optimization note.Josh Haberman
2014-08-09Make the absence of perf-cppflags give a good default build.Josh Haberman
Defaults are now: - thread-safe with GCC/Clang - Debugging not enabled (enable with -UNDEBUG)
2014-08-09Fixed some bugs and added accessors.Josh Haberman
2014-08-01Beginnings of a prototype Ruby extension.Josh Haberman
2014-07-29Added UPB_UNTRACKED_REF and some more handler overload options.Josh Haberman
2014-07-24Sync from Google-internal development.Josh Haberman
2014-07-02Sync from internal Google development.Josh Haberman
2014-06-26Sync from internal Google development.Josh Haberman
2014-02-04Sync from Google development.Josh Haberman
2014-01-21Sync to internal Google development.Josh Haberman
2013-12-20Sync from Google-internal development.Josh Haberman
2013-10-24Build fix for Mac OS X.Josh Haberman
2013-10-24Fixes to make the open-source build compile on Linux.Josh Haberman
2013-10-24Merge from Google-internal development:Josh Haberman
- rewritten decoder; interpreted decoder is bytecode-based, JIT decoder no longer falls back to the interpreter. - C++ improvements: C++11-compatible iterators, upb::reffed_ptr for RAII refcounting, better upcast/downcast support. - removed the gross upb_value abstraction from public upb.h.
2013-05-28Fix to compile on Linux.Josh Haberman
2013-05-28Fixes to compile on GCC 4.2, as shipped with XCode.Josh Haberman
2013-05-28Merge from Google-internal development.Josh Haberman
- Better error reporting for upb::Def setters. - error reporting for upb::Handlers setters. - made the start/endmsg handlers a little less special-cased.
2013-05-25Updated benchmarks to new API.Josh Haberman
2013-05-25Merge branch 'master' of github.com:haberman/upbJosh Haberman
Conflicts: upb/google/proto2.cc upb/handlers.h
2013-05-25Synced with Google-internal development.Josh Haberman
C++ handlers are now type-safe; SinkFrame is gone. Various other changes.
2013-05-11Updated benchmarks to new APIs.Joshua Haberman
2013-05-11Open source fixes: builds on OS X again.Joshua Haberman
2013-05-11Synced with 3 months of Google-internal development.Josh Haberman
Major changes: - Got rid of all bytestream interfaces in favor of using regular handlers. - new Pipeline object represents a upb pipeline, does bump allocation internally to manage memory. - proto2 support now can handle extensions.
2013-02-15Sync with 8 months of Google-internal development.Josh Haberman
Many things have changed and been simplified. The memory-management story for upb_def and upb_handlers is much more robust; upb_def and upb_handlers should be fairly stable interfaces now. There is still much work to do for the runtime component (upb_sink).
2012-03-31Properly export setjmp/longjmp.Joshua Haberman
2012-03-31Fix broken setjmp with working one.Joshua Haberman
2012-03-31Got decoder & textprinter compiling in kernel mode.Joshua Haberman
2012-03-31Sync from internal Google development.Joshua Haberman
2012-03-24Got our performance back by tweaking AssignToString.Josh Haberman
plain.parsetoproto2_googlemessage1.upb_jit: 254 -> 324 (27.56) omitfp.parsetoproto2_googlemessage1.upb_jit: 220 -> 332 (50.91)
2012-03-24Fix duplicate symbol on OS X.Josh Haberman
2012-03-24Updated DynASM from upstream (Lua 5.2 support).Josh Haberman
2012-03-24Sync from internal Google development.Joshua Haberman
Many improvements, too many to mention. One significant perf regression warrants investigation: omitfp.parsetoproto2_googlemessage1.upb_jit: 343 -> 252 (-26.53) plain.parsetoproto2_googlemessage1.upb_jit: 334 -> 251 (-24.85) 25% regression for this benchmark is bad, but since I don't think there's any fundamental design issue that caused it I'm going to go ahead with the commit anyway. Can investigate and fix later. Other benchmarks were neutral or showed slight improvement.
2011-12-23Fixes to un-break "make descriptorgen"Joshua Haberman
2011-12-22Small Makefile fix.Joshua Haberman
2011-12-22Fixed the open-source build.Joshua Haberman
2011-12-22Sync with internal Google development.Joshua Haberman
This breaks the open-source build, will follow up with a change to fix it.
2011-11-23Refinement of upb_bytesrc interface.Joshua Haberman
Added a upb_byteregion that tracks a region of the input buffer; decoders use this instead of using a upb_bytesrc directly. upb_byteregion is also used as the way of passing a string to a upb_handlers callback. This symmetry makes decoders compose better; if you want to take a parsed string and decode it as something else, you can take the string directly from the callback and feed it as input to another parser. A commented-out version of a pinning interface is present; I decline to actually implement it (and accept its extra complexity) until/unless it is clear that it is actually a win. But it is included as a proof-of-concept, to show that it fits well with the existing interface.
2011-11-19Changes to get upb compiling inside Google.Joshua Haberman
2011-09-21Fix GDB unwinding through JIT-compiled frames.Joshua Haberman
2011-09-20Fixes to get upb to compile inside Google.Joshua Haberman
2011-09-20x86 JIT: now works without -NDNDEBUG (also small perf increase).Joshua Haberman
2011-09-20Small bugfix for x86->x64 rename.Joshua Haberman
2011-09-20Fix perf-tests.sh to skip building non-upb tests.Joshua Haberman
2011-09-19Rename x86 -> x64, since JIT is x64-only.Joshua Haberman
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback