ref: ab711815452ee44b06663b68ee21bb200e9eed41
parent: 36533e8c5a00b0ae430ba2b102bedfd587e67db1
author: Alex Converse <aconverse@google.com>
date: Fri Mar 17 12:24:45 EDT 2017
Drop vp9_get_token_extracost vp9_get_token_cost does the same thing with one fewer lookup. Change-Id: Ifc110b12403cb1a04a3f91357ab435c67b4815d6
--- a/vp9/encoder/vp9_encodemb.c
+++ b/vp9/encoder/vp9_encodemb.c
@@ -143,7 +143,7 @@
/* Evaluate the first possibility for this state. */
rate0 = tokens[next][0].rate;
rate1 = tokens[next][1].rate;
- vp9_get_token_extracost(cat6_high_cost, x, &t0, &base_bits);
+ base_bits = vp9_get_token_cost(x, &t0, cat6_high_cost);
/* Consider both possible successor states. */
if (next < default_eob) {
band = band_translate[i + 1];
@@ -193,7 +193,7 @@
t1 = tokens[next][1].token == EOB_TOKEN ? EOB_TOKEN : ZERO_TOKEN;
base_bits = 0;
} else {
- vp9_get_token_extracost(cat6_high_cost, x, &t0, &base_bits);
+ base_bits = vp9_get_token_cost(x, &t0, cat6_high_cost);
t1 = t0;
}
if (next < default_eob) {
--- a/vp9/encoder/vp9_tokenize.h
+++ b/vp9/encoder/vp9_tokenize.h
@@ -80,23 +80,6 @@
extern const uint16_t vp9_cat6_high10_high_cost[256];
extern const uint16_t vp9_cat6_high12_high_cost[1024];
-static INLINE void vp9_get_token_extracost(const uint16_t *cat6_high_table,
- int v, int16_t *token,
- int *extracost) {
- EXTRABIT extrabits; // unsigned extrabits
- v = abs(v);
- if (v >= CAT6_MIN_VAL) {
- *token = CATEGORY6_TOKEN;
- extrabits = v - CAT6_MIN_VAL;
- *extracost =
- vp9_cat6_low_cost[extrabits & 0xff] + cat6_high_table[extrabits >> 8];
- } else {
- *token = vp9_dct_cat_lt_10_value_tokens[v].token;
- extrabits = vp9_dct_cat_lt_10_value_tokens[v].extra >> 1;
- *extracost = vp9_extra_bits[*token].cost[extrabits];
- }
-}
-
#if CONFIG_VP9_HIGHBITDEPTH
static INLINE const uint16_t *vp9_get_high_cost_table(int bit_depth) {
return bit_depth == 8 ? vp9_cat6_high_cost