[scudo] Various code generation optimizations
Scudo has to not be compiled with `-ffreestanding` so that various small fixed size `memcpy()` can be optimized away, as such we can't depend on musl_internal. On the other hand, the compiler is pretty aggressive at inlining things resulting in some code bloat, where a large function is duplicated many times. So we add the `ALWAYS_INLINE` or `NOINLINE` attributes to various functions to make the generated code less clunky. Finally, include some changes from upstream reviews. Change-Id: Ie80d51e84b7d496e09934e1a59b1ea70eedf710e
Showing
- zircon/third_party/ulib/scudo/BUILD.gn 2 additions, 1 deletionzircon/third_party/ulib/scudo/BUILD.gn
- zircon/third_party/ulib/scudo/combined.h 3 additions, 2 deletionszircon/third_party/ulib/scudo/combined.h
- zircon/third_party/ulib/scudo/common.h 8 additions, 3 deletionszircon/third_party/ulib/scudo/common.h
- zircon/third_party/ulib/scudo/flags.cc 5 additions, 4 deletionszircon/third_party/ulib/scudo/flags.cc
- zircon/third_party/ulib/scudo/flags.h 2 additions, 0 deletionszircon/third_party/ulib/scudo/flags.h
- zircon/third_party/ulib/scudo/flags_parser.cc 25 additions, 27 deletionszircon/third_party/ulib/scudo/flags_parser.cc
- zircon/third_party/ulib/scudo/flags_parser.h 3 additions, 5 deletionszircon/third_party/ulib/scudo/flags_parser.h
- zircon/third_party/ulib/scudo/fuchsia.cc 5 additions, 4 deletionszircon/third_party/ulib/scudo/fuchsia.cc
- zircon/third_party/ulib/scudo/linux.cc 4 additions, 21 deletionszircon/third_party/ulib/scudo/linux.cc
- zircon/third_party/ulib/scudo/local_cache.h 1 addition, 1 deletionzircon/third_party/ulib/scudo/local_cache.h
- zircon/third_party/ulib/scudo/primary64.h 7 additions, 7 deletionszircon/third_party/ulib/scudo/primary64.h
- zircon/third_party/ulib/scudo/release.h 2 additions, 2 deletionszircon/third_party/ulib/scudo/release.h
- zircon/third_party/ulib/scudo/secondary.h 22 additions, 13 deletionszircon/third_party/ulib/scudo/secondary.h
- zircon/third_party/ulib/scudo/tsd.h 6 additions, 5 deletionszircon/third_party/ulib/scudo/tsd.h
Loading
Please register or sign in to comment