README: -tiny does a bit more now

On my machine, garble itself goes from about 5.7MiB to about 4.8 MiB
when being built with `garble build` and `garble build -tiny`,
which is roughly a 16% decrease in size.
The 2-5% figure is dated at this point, as we do better than that now.
pull/636/head
Daniel Martí 2 years ago committed by lu4p
parent 22c177f088
commit 6f1959ca20

@ -66,16 +66,17 @@ declaration, for example.
With the `-tiny` flag, even more information is stripped from the Go binary. With the `-tiny` flag, even more information is stripped from the Go binary.
Position information is removed entirely, rather than being obfuscated. Position information is removed entirely, rather than being obfuscated.
Runtime code which prints panics, fatal errors, and trace/debug info is removed. Runtime code which prints panics, fatal errors, and trace/debug info is removed.
All in all, this can make binaries 2-5% smaller. Many symbol names are also omitted from binary sections at link time.
All in all, this can make binaries about 15% smaller.
With this flag, no panics or fatal runtime errors will ever be printed, but they With this flag, no panics or fatal runtime errors will ever be printed, but they
can still be handled internally with `recover` as normal. In addition, the can still be handled internally with `recover` as normal. In addition, the
`GODEBUG` environmental variable will be ignored. `GODEBUG` environmental variable will be ignored.
Note that this flag can make debugging crashes harder, as a panic will simply Note that this flag can make debugging crashes harder, as a panic will simply
exit the entire program without printing a stack trace, and all source code exit the entire program without printing a stack trace, and source code
positions are set to line 1. Similarly, `garble reverse` is generally not useful positions and many names are removed.
in this mode. Similarly, `garble reverse` is generally not useful in this mode.
### Speed ### Speed

Loading…
Cancel
Save