ref: 6a3ba2118c8d463fcf8efb9f0190e2f9289e3b65
parent: 4529dc848332b78421c04408c8f8fe698ea0c21e
author: Vitaly Buka <vitalybuka@chromium.org>
date: Wed Nov 20 13:08:14 EST 2019
Disable -ftrivial-auto-var-init= for hot code Improves encode_time by 10% on FullStackTest.VP9KSVC_3SL_High and other tests when -ftrivial-auto-var-init= is used. vp9_pick_inter_mode can be called recursevely so multiple pred_buf is neede. So alternative to attribute should be list of bufferes in ThreadData or TileData. Bug: 1020220, 977230 Change-Id: I939a468f88c2b5dd2ec235de7564b92bfaa356f5
--- a/vp9/encoder/vp9_pickmode.c
+++ b/vp9/encoder/vp9_pickmode.c
@@ -1719,9 +1719,9 @@
// process.
// tmp[3] points to dst buffer, and the other 3 point to allocated buffers.
PRED_BUFFER tmp[4];
- DECLARE_ALIGNED(16, uint8_t, pred_buf[3 * 64 * 64]);
+ DECLARE_ALIGNED(16, uint8_t, pred_buf[3 * 64 * 64] VPX_UNINITIALIZED);
#if CONFIG_VP9_HIGHBITDEPTH
- DECLARE_ALIGNED(16, uint16_t, pred_buf_16[3 * 64 * 64]);
+ DECLARE_ALIGNED(16, uint16_t, pred_buf_16[3 * 64 * 64] VPX_UNINITIALIZED);
#endif
struct buf_2d orig_dst = pd->dst;
PRED_BUFFER *this_mode_pred = NULL;