Joshua Haberman
438ecaeb5a
Give all field parsers a generic table entry.
4 years ago
Joshua Haberman
383ae5293e
WIP.
4 years ago
Joshua Haberman
26abaa2345
WIP.
4 years ago
Joshua Haberman
34b98bc030
Avoid passing too many params to fallback.
4 years ago
Joshua Haberman
763a3f6293
WIP.
4 years ago
Joshua Haberman
02ff6fb996
Merge pull request #309 from haberman/decoder-forceinline
...
Add UPB_FORCEINLINE for varint32 decoding.
4 years ago
Joshua Haberman
a202ce9629
Add UPB_FORCEINLINE for varint32 decoding.
...
This speeds up the decoder by >20% and also reduces code size slightly!
name old time/op new time/op delta
ArenaOneAlloc 20.4ns ± 0% 20.2ns ± 0% -1.10% (p=0.000 n=12+11)
ArenaInitialBlockOneAlloc 5.25ns ± 0% 5.25ns ± 0% ~ (p=0.786 n=11+12)
ParseDescriptorNoHeap 17.1µs ± 0% 13.1µs ± 0% -23.29% (p=0.000 n=11+12)
ParseDescriptor 17.4µs ± 1% 13.5µs ± 1% -22.51% (p=0.000 n=12+12)
SerializeDescriptor 10.7µs ± 0% 10.9µs ± 0% +1.95% (p=0.000 n=12+12)
FILE SIZE VM SIZE
-------------- --------------
+2.7% +16 +2.7% +16 [LOAD #2 [RX]]
+0.5% +16 [ = ] 0 [Unmapped]
-1.4% -72 -0.7% -32 upb/decode.c
+3.1% +98 +3.1% +98 decode_msg
[DEL] -170 [DEL] -130 decode_varint32
-0.0% -40 -0.0% -16 TOTAL
4 years ago
Joshua Haberman
d0f2c4c8a2
Merge pull request #308 from haberman/encoder
...
Optimized the binary encoder for a 2x speedup
4 years ago
Joshua Haberman
5741eb9ad7
Expanded benchmarking script and added one size opt to the encoder.
4 years ago
Joshua Haberman
0135399e60
Fixed bug introduced in refactoring.
4 years ago
Joshua Haberman
df3438222b
Notated impossible branch as unreachable.
4 years ago
Joshua Haberman
9b31e8fe12
Merged common encode tag paths.
4 years ago
Joshua Haberman
5d7dc718cc
Minor formatting fix.
4 years ago
Joshua Haberman
80441e4eb4
Optimized binary encoder.
4 years ago
Joshua Haberman
ada28896b9
Changed encoder to use longjmp() for error recovery.
4 years ago
Joshua Haberman
6e140c267c
Added benchmark for encoding.
4 years ago
Joshua Haberman
7338facddb
Merge pull request #307 from veblush/port-backport
...
Add UPB_NORETURN for MSC
4 years ago
Esun Kim
4d2251c3e4
Add UPB_NORETURN for MSC
4 years ago
Joshua Haberman
382d5afc60
Merge pull request #306 from haberman/bigendian
...
Fixed binary encoding and decoding for big-endian machines.
4 years ago
Joshua Haberman
efefbffc80
Fixed binary encoding and decoding for big-endian machines.
4 years ago
Joshua Haberman
5d3083013c
Merge pull request #304 from haberman/upb-assume
...
Fixed UPB_ASSUME() for non-GCC, non-MSVC platforms.
4 years ago
Joshua Haberman
55dd9d3e41
Fixed UPB_ASSUME() for non-GCC, non-MSVC platforms.
4 years ago
Joshua Haberman
e4c8afd0d4
Merge pull request #303 from haberman/packed-def
...
Fixed upb_fielddef_packed() to have the correct default.
4 years ago
Joshua Haberman
8284321780
Fixed upb_fielddef_packed() to have the correct default.
4 years ago
Joshua Haberman
ed86d98f53
Merge pull request #302 from haberman/verify-utf8
...
Verify UTF-8 when parsing proto3 string fields.
4 years ago
Joshua Haberman
8e26a33bcb
Added a test for UTF-8 parse checking and added missing error reporting.
4 years ago
Joshua Haberman
2c666bc8f6
Use C-style comment instead of C++.
4 years ago
Joshua Haberman
a77ea639d5
Verify UTF-8 when parsing proto3 string fields.
4 years ago
Joshua Haberman
7f19072206
Merge pull request #301 from haberman/rm-pop
...
Removed unused push/pop functions.
4 years ago
Joshua Haberman
bfdfe5a914
Removed unused push/pop functions.
4 years ago
Joshua Haberman
1479f2d7ca
Merge pull request #299 from haberman/google3-fixes
...
Applied changes from google3.
5 years ago
Joshua Haberman
8f11ec57d2
Applied changes from google3.
5 years ago
Joshua Haberman
7172b981dd
Merge pull request #297 from haberman/bugfixes
...
A few bugfixes, and Valgrind testing for Kokoro.
5 years ago
Joshua Haberman
ffe40c9f94
Only run Valgrind if it is present.
5 years ago
Joshua Haberman
922c126b8b
Fixed unit test errors that were causing Valgrind failures.
5 years ago
Joshua Haberman
086a68d191
Fixed memory leak that could occur after upb_arena_fuse().
...
Also added valgrind testing for Kokoro.
5 years ago
Joshua Haberman
35abcc248b
Added test that should trigger a memory leak.
5 years ago
Joshua Haberman
7d726c8da6
JSON parser: Bugfix for float/double in quotes.
5 years ago
Joshua Haberman
74c60c757b
Merge pull request #296 from haberman/php-fixes
...
Fixes for the PHP extension
5 years ago
Joshua Haberman
efe11c6c50
Removed excess logging statement.
5 years ago
Joshua Haberman
92e63da733
Merge pull request #295 from haberman/mac-compile-fix
...
Added initialization of all members to satisfy compiler warnings.
5 years ago
Joshua Haberman
e179dda212
Added initialization of all members to satisfy compiler warnings.
5 years ago
Joshua Haberman
81c2aa753e
Fixes for the PHP C Extension.
5 years ago
Igor Kostenko
f7fcc0df37
Fix divide by zero vs2019 compilation error #293 ( #294 )
...
* Fix divide by zero vs2019 compilation error
* undef introduced define
5 years ago
Joshua Haberman
7d38c201fa
Enabled conformance tests to run under ASAN. This apears to work now. ( #292 )
5 years ago
Joshua Haberman
0dc2394da5
Changes to support import into google3 ( #291 )
...
* Fixes for google3.
* Added to failure list for new failure.
* Reused existing failure list file.
* Add a ./ to assist rewriting.
5 years ago
Joshua Haberman
363e39c171
Fix for extra compiler warnings. ( #290 )
5 years ago
Joshua Haberman
b717575cef
Added -Wextra and -Wshorten-64-to-32 and fixed resulting errors. ( #289 )
...
* Added -Wextra and -Wshorten-64-to-32 and fixed resulting errors.
* Disable -Wshorten-32-to-64 since Kokoro is missing Clang.
* Fixed -Wextra warnings for gcc.
* Reordered UPB_UNUSED() to come after declarations.
* Added another -pedantic fix and log CC version.
* Fix compile error and conditionally run use_bazel.sh.
* Moved set -e after use_bazel.sh.
* Fixed typo in conditional.
5 years ago
Joshua Haberman
2e335ab9d2
Merge pull request #288 from haberman/ubsan
...
Fixed all UBSan issues and added UBSan CI checks.
5 years ago
Joshua Haberman
408d34797d
Disable UBSan, Clang is not available in upb's Kokoro image atm.
5 years ago