Joshua Haberman
|
d1cd80385b
|
Merge pull request #313 from haberman/inline-arena
Inline arena for the duration of the decode.
|
4 years ago |
Joshua Haberman
|
2339fc779c
|
Updated obsolete comment.
|
4 years ago |
Joshua Haberman
|
ebe53f8590
|
Fixed compile error.
|
4 years ago |
Joshua Haberman
|
71749b7caf
|
Implemented inline array allocation, and moved type->lg2 map to reflection.
|
4 years ago |
Joshua Haberman
|
b58d2a0ee6
|
Shrink overhead of message representation.
|
4 years ago |
Joshua Haberman
|
d87ceeacab
|
Shave off one more store.
|
4 years ago |
Joshua Haberman
|
c25d895adf
|
Shrunk the arena state that needs to be synced.
|
4 years ago |
Joshua Haberman
|
ff40dd6ea9
|
Added new internal header.
|
4 years ago |
Joshua Haberman
|
cbcd635917
|
Fixed memory leak.
|
4 years ago |
Joshua Haberman
|
e5264bd794
|
Merge pull request #312 from haberman/defiter
Added simple offset-based accessors for defs, and deprecated old iterators
|
4 years ago |
Joshua Haberman
|
746f64692c
|
Moved arena inline for decoder.
|
4 years ago |
Joshua Haberman
|
b8ef1dcc57
|
Removed C++-style comments.
|
4 years ago |
Joshua Haberman
|
575acd85bd
|
Re-added const for all of the pointer wrapper types.
|
4 years ago |
Joshua Haberman
|
5aa5b77b41
|
Added simple offset-based accessors for defs, and deprecated old iterators.
|
4 years ago |
Joshua Haberman
|
33384301e2
|
Merge pull request #311 from haberman/proto2-benchmark2
Benchmarks vs. proto2
|
4 years ago |
Joshua Haberman
|
bc301e7da4
|
Use merge/partial variants to give proto2 benchmark the fairest hearing.
|
4 years ago |
Joshua Haberman
|
30f01afa83
|
Added LargeInitialBlock test for proto2.
|
4 years ago |
Joshua Haberman
|
5d23fd99af
|
Used shorter protobuf:: namespace alias.
|
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 |