enums.h: Combine related #defines into packed enums.
enums for BLOCK_SIZE, TX_SIZE and PREDICTION_MODE.
Note: These were converted to #defines earlier to save on memory:
https://chromium-review.googlesource.com/#/c/269854/
But we, instead, use attribute 'packed' (see here:
https://gcc.gnu.org/onlinedocs/gcc/Common-Type-Attributes.html#Common-Type-Attributes)
to ensure that these enums use the smallest possible integer type,
and so use smallest memory when used in structs/arrays etc.
Change-Id: If1fc136686b28847109c9f3a06f8728165e7e475
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index ce16fcf..b169ad0 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -2132,7 +2132,7 @@
int i, j, k, l, m, tx_size, val;
const int max_idx = cpi->common.coef_probs_update_idx;
const TX_MODE tx_mode = cpi->common.tx_mode;
- const TX_SIZE max_tx_size = tx_mode_to_biggest_tx_size[tx_mode];
+ const int max_tx_size = tx_mode_to_biggest_tx_size[tx_mode];
const SUBFRAME_STATS *subframe_stats = &cpi->subframe_stats;
assert(max_idx < COEF_PROBS_BUFS);
@@ -3265,7 +3265,7 @@
encode_quantization(cm, wb);
encode_segmentation(cm, xd, wb);
if (!cm->seg.enabled && xd->lossless[0])
- cm->tx_mode = TX_4X4;
+ cm->tx_mode = ONLY_4X4;
else
write_txfm_mode(cm->tx_mode, wb);