From 6a3ba2118c8d463fcf8efb9f0190e2f9289e3b65 Mon Sep 17 00:00:00 2001 From: Vitaly Buka Date: Wed, 20 Nov 2019 18:08:14 -0800 Subject: [PATCH] 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 --- vp9/encoder/vp9_pickmode.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/vp9/encoder/vp9_pickmode.c b/vp9/encoder/vp9_pickmode.c index 7f96ea2..9b2e485 100644 --- a/vp9/encoder/vp9_pickmode.c +++ b/vp9/encoder/vp9_pickmode.c @@ -1719,9 +1719,9 @@ void vp9_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, TileDataEnc *tile_data, // 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; -- 2.7.4