
- crypto/external/bsd/heimdal - crypto/external/bsd/libsaslc - crypto/external/bsd/netpgp - crypto/external/bsd/openssl Change-Id: I91dbf05f33e637edf5b9bb408d5baddd7ba8cf75
132 lines
3.1 KiB
Bash
132 lines
3.1 KiB
Bash
#!/bin/sh
|
|
|
|
size .libs/libasn1.dylib
|
|
size .libs/libasn1base.a | awk '{sum += $1} END {print sum}' | sed 's/^/TEXT baselib: /'
|
|
size .libs/asn1_*.o | awk '{sum += $1} END {print sum}' | sed 's/^/generated code stubs: /'
|
|
size *_asn1-template.o | awk '{sum += $1} END {print sum}' | sed 's/^/TEXT stubs: /'
|
|
|
|
exit 0
|
|
|
|
Notes about the template parser:
|
|
|
|
- assumption: code is large, tables smaller
|
|
|
|
- how to generate template based stubs:
|
|
|
|
make check asn1_compile_FLAGS=--template > log
|
|
|
|
- pretty much the same as the generate code, except uses tables instead of code
|
|
|
|
TODO:
|
|
- Make hdb work
|
|
|
|
- Fuzzing tests
|
|
|
|
- Performance testing
|
|
|
|
- ASN1_MALLOC_ENCODE() as a function, replaces encode_ and length_
|
|
|
|
- Fix SIZE constraits
|
|
|
|
- Compact types that only contain on entry to not having a header.
|
|
|
|
|
|
SIZE - Futher down is later generations of the template parser
|
|
|
|
code:
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
462848 12288 0 323584 798720 c3000 (O2)
|
|
|
|
trivial types:
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
446464 12288 0 323584 782336 bf000 (O2)
|
|
|
|
OPTIONAL
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
425984 16384 0 323584 765952 bb000 (O2)
|
|
|
|
SEQ OF
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
368640 32768 0 327680 729088 b2000 (O2)
|
|
348160 32768 0 327680 708608 ad000 (Os)
|
|
|
|
BOOLEAN
|
|
==================
|
|
339968 32768 0 327680 700416 ab000 (Os)
|
|
|
|
TYPE_EXTERNAL:
|
|
==================
|
|
331776 32768 0 327680 692224 a9000 (Os)
|
|
|
|
SET OF
|
|
==================
|
|
327680 32768 0 327680 688128 a8000 (Os)
|
|
|
|
TYPE_EXTERNAL everywhere
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
167936 69632 0 327680 565248 8a000 (Os)
|
|
|
|
TAG uses ->ptr (header and trailer)
|
|
==================
|
|
229376 102400 0 421888 753664 b8000 (O0)
|
|
|
|
TAG uses ->ptr (header only)
|
|
==================
|
|
221184 77824 0 421888 720896 b0000 (O0)
|
|
|
|
BER support for octet string (not working)
|
|
==================
|
|
180224 73728 0 417792 671744 a4000 (O2)
|
|
|
|
CHOICE and BIT STRING missign
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
172032 73728 0 417792 663552 a2000 (Os)
|
|
|
|
No accessor functions to global variable
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
159744 73728 0 393216 626688 99000 (Os)
|
|
|
|
All types tables (except choice) (id still objects)
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
167936 77824 0 421888 667648 a3000
|
|
base lib: 22820
|
|
|
|
__TEXT __DATA __OBJC others dec hex
|
|
==================
|
|
167936 77824 0 421888 667648 a3000 (Os)
|
|
baselib: 22820
|
|
generated code stubs: 41472
|
|
TEXT stubs: 112560
|
|
|
|
All types, id still objects
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
155648 81920 0 430080 667648 a3000 (Os)
|
|
TEXT baselib: 23166
|
|
generated code stubs: 20796
|
|
TEXT stubs: 119891
|
|
|
|
All types, id still objects, dup compression
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
143360 65536 0 376832 585728 8f000 (Os)
|
|
TEXT baselib: 23166
|
|
generated code stubs: 20796
|
|
TEXT stubs: 107147
|
|
|
|
All types, dup compression, id vars
|
|
==================
|
|
__TEXT __DATA __OBJC others dec hex
|
|
131072 65536 0 352256 548864 86000
|
|
TEXT baselib: 23166
|
|
generated code stubs: 7536
|
|
TEXT stubs: 107147
|