Remove CONFIG_IBP_DIR macros
This MR removes the CONFIG_IBP_DIR related macros from the AVM code and clean-up some code.
diff --git a/aom/aom_encoder.h b/aom/aom_encoder.h
index efb0267..a34aa43 100644
--- a/aom/aom_encoder.h
+++ b/aom/aom_encoder.h
@@ -333,12 +333,10 @@
*/
unsigned int enable_cctx;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
/*!\brief enable Intra Bi-Prediction (IBP)
*
*/
unsigned int enable_ibp;
-#endif // CONFIG_IBP_DC || CONFIG_IBP_DIR
#if CONFIG_ADAPTIVE_MVD
/*!\brief enable Adaptive MVD resolution
*
diff --git a/aom/internal/aom_codec_internal.h b/aom/internal/aom_codec_internal.h
index 83e7d3c..a108dca 100644
--- a/aom/internal/aom_codec_internal.h
+++ b/aom/internal/aom_codec_internal.h
@@ -49,9 +49,7 @@
#include "../aom_decoder.h"
#include "../aom_encoder.h"
#include "common/args_helper.h"
-#if CONFIG_IBP_DIR
#include "av1/common/enums.h"
-#endif
#include <stdarg.h>
#ifdef __cplusplus
@@ -328,9 +326,7 @@
struct aom_codec_priv {
const char *err_detail;
aom_codec_flags_t init_flags;
-#if CONFIG_IBP_DIR
uint8_t *ibp_directional_weights[TX_SIZES_ALL][DIR_MODES_0_90];
-#endif
struct {
aom_fixed_buf_t cx_data_dst_buf;
unsigned int cx_data_pad_before;
diff --git a/apps/aomenc.c b/apps/aomenc.c
index 1ec3c2b..313fce3 100644
--- a/apps/aomenc.c
+++ b/apps/aomenc.c
@@ -455,9 +455,7 @@
#if CONFIG_CROSS_CHROMA_TX
&g_av1_codec_arg_defs.enable_cctx,
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
&g_av1_codec_arg_defs.enable_ibp,
-#endif
&g_av1_codec_arg_defs.explicit_ref_frame_map,
&g_av1_codec_arg_defs.max_drl_refmvs,
#if CONFIG_REF_MV_BANK
@@ -659,9 +657,7 @@
#if CONFIG_CROSS_CHROMA_TX
config->enable_cctx = 1;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
config->enable_ibp = 1;
-#endif
#if CONFIG_ADAPTIVE_MVD
config->enable_adaptive_mvd = 1;
#endif // CONFIG_ADAPTIVE_MVD
@@ -1524,9 +1520,7 @@
#if CONFIG_ORIP
", ORIP(%d)"
#endif // CONFIG_CONFIG_ORIP
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
", IBP(%d)"
-#endif // CONFIG_IBP_DC || CONFIG_IBP_DIR
"\n",
encoder_cfg->enable_intra_edge_filter,
encoder_cfg->enable_paeth_intra, encoder_cfg->enable_mrls
@@ -1538,11 +1532,8 @@
,
encoder_cfg->enable_orip
#endif // CONFIG_ORIP
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
,
- encoder_cfg->enable_ibp
-#endif // CONFIG_IBP_DC || CONFIG_IBP_DIR
- );
+ encoder_cfg->enable_ibp);
fprintf(stdout,
"Tool setting (Inter) : InterIntra (%d), OBMC (%d), "
diff --git a/av1/arg_defs.c b/av1/arg_defs.c
index c7f0d6e..555bf6b 100644
--- a/av1/arg_defs.c
+++ b/av1/arg_defs.c
@@ -431,11 +431,9 @@
"Enable cross-chroma component transform "
"(0: false, 1: true(default))"),
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
.enable_ibp = ARG_DEF(NULL, "enable-ibp", 1,
"Enable intra bi-prediction"
"(0: false, 1: true (default))"),
-#endif
#if CONFIG_ADAPTIVE_MVD
.enable_adaptive_mvd = ARG_DEF(NULL, "enable-adaptive-mvd", 1,
"Enable adaptive MVD resolution"
diff --git a/av1/arg_defs.h b/av1/arg_defs.h
index 4afdfd6..49b3ac5 100644
--- a/av1/arg_defs.h
+++ b/av1/arg_defs.h
@@ -175,9 +175,7 @@
#if CONFIG_CROSS_CHROMA_TX
arg_def_t enable_cctx;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
arg_def_t enable_ibp;
-#endif
#if CONFIG_ADAPTIVE_MVD
arg_def_t enable_adaptive_mvd;
#endif // CONFIG_ADAPTIVE_MVD
diff --git a/av1/av1_cx_iface.c b/av1/av1_cx_iface.c
index cd6aa58..a11e723 100644
--- a/av1/av1_cx_iface.c
+++ b/av1/av1_cx_iface.c
@@ -149,9 +149,7 @@
#if CONFIG_CROSS_CHROMA_TX
int enable_cctx; // enable cross-chroma component transform
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
- int enable_ibp; // enable intra bi-prediction
-#endif // CONFIG_IBP_DC or CONFIG_IBP_DIR
+ int enable_ibp; // enable intra bi-prediction
#if CONFIG_ADAPTIVE_MVD
int enable_adaptive_mvd; // enable adaptive MVD resolution
@@ -486,10 +484,7 @@
#if CONFIG_CROSS_CHROMA_TX
1, // enable cross-chroma component transform
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
1, // enable intra bi-prediction
-#endif // CONFIG_IBP_DC or CONFIG_IBP_DIR
-
#if CONFIG_ADAPTIVE_MVD
1, // enable adaptive mvd resolution
#endif // CONFIG_ADAPTIVE_MVD
@@ -985,9 +980,7 @@
#if CONFIG_CROSS_CHROMA_TX
cfg->enable_cctx = extra_cfg->enable_cctx;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
cfg->enable_ibp = extra_cfg->enable_ibp;
-#endif
#if CONFIG_ADAPTIVE_MVD
cfg->enable_adaptive_mvd = extra_cfg->enable_adaptive_mvd;
#endif // CONFIG_ADAPTIVE_MVD
@@ -1105,9 +1098,7 @@
#if CONFIG_CROSS_CHROMA_TX
extra_cfg->enable_cctx = cfg->enable_cctx;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
extra_cfg->enable_ibp = cfg->enable_ibp;
-#endif
#if CONFIG_ADAPTIVE_MVD
extra_cfg->enable_adaptive_mvd = cfg->enable_adaptive_mvd;
#endif // CONFIG_ADAPTIVE_MVD
@@ -1675,9 +1666,7 @@
#if CONFIG_ORIP
intra_mode_cfg->enable_orip = extra_cfg->enable_orip;
#endif
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
intra_mode_cfg->enable_ibp = extra_cfg->enable_ibp;
-#endif
// Set transform size/type configuration.
txfm_cfg->enable_tx64 = extra_cfg->enable_tx64;
@@ -2793,9 +2782,7 @@
clamp(lap_lag_in_frames, 0, MAX_LAG_BUFFERS),
&priv->stats_buf_context);
}
-#if CONFIG_IBP_DIR
init_ibp_info(priv->cpi->common.ibp_directional_weights);
-#endif
}
}
@@ -3857,11 +3844,9 @@
err_string)) {
extra_cfg.enable_cctx = arg_parse_int_helper(&arg, err_string);
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
} else if (arg_match_helper(&arg, &g_av1_codec_arg_defs.enable_ibp, argv,
err_string)) {
extra_cfg.enable_ibp = arg_parse_int_helper(&arg, err_string);
-#endif
#if CONFIG_ADAPTIVE_MVD
} else if (arg_match_helper(&arg, &g_av1_codec_arg_defs.enable_adaptive_mvd,
argv, err_string)) {
@@ -4340,9 +4325,7 @@
#if CONFIG_CROSS_CHROMA_TX
1,
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
1,
-#endif // CONFIG_IBP_DC or CONFIG_IBP_DIR
#if CONFIG_ADAPTIVE_MVD
1,
#endif // CONFIG_ADAPTIVE_MVD
diff --git a/av1/av1_dx_iface.c b/av1/av1_dx_iface.c
index 81f2455..cffe5d6 100644
--- a/av1/av1_dx_iface.c
+++ b/av1/av1_dx_iface.c
@@ -107,9 +107,7 @@
priv->tile_mode = 0;
priv->decode_tile_row = -1;
priv->decode_tile_col = -1;
-#if CONFIG_IBP_DIR
init_ibp_info(ctx->priv->ibp_directional_weights);
-#endif
}
return AOM_CODEC_OK;
@@ -148,9 +146,7 @@
av1_free_internal_frame_buffers(&ctx->buffer_pool->int_frame_buffers);
}
-#if CONFIG_IBP_DIR
free_ibp_info(ctx->base.ibp_directional_weights);
-#endif
aom_free(ctx->frame_worker);
aom_free(ctx->buffer_pool);
aom_img_free(&ctx->img);
@@ -485,11 +481,9 @@
frame_worker_data->pbi->is_fwd_kf_present = 0;
frame_worker_data->pbi->enable_subgop_stats = ctx->enable_subgop_stats;
frame_worker_data->pbi->is_arf_frame_present = 0;
-#if CONFIG_IBP_DIR
memcpy(frame_worker_data->pbi->common.ibp_directional_weights,
ctx->base.ibp_directional_weights,
sizeof(ctx->base.ibp_directional_weights));
-#endif
worker->hook = frame_worker_hook;
init_buffer_callbacks(ctx);
diff --git a/av1/common/av1_common_int.h b/av1/common/av1_common_int.h
index cc8236a..4673ed3 100644
--- a/av1/common/av1_common_int.h
+++ b/av1/common/av1_common_int.h
@@ -35,9 +35,7 @@
#include "av1/common/tile_common.h"
#include "av1/common/timing.h"
#include "av1/common/odintrin.h"
-#if CONFIG_IBP_DIR
#include "av1/common/warped_motion.h"
-#endif
#include "av1/encoder/hash_motion.h"
#include "aom_dsp/grain_synthesis.h"
#include "aom_dsp/grain_table.h"
@@ -452,9 +450,7 @@
#if CONFIG_CROSS_CHROMA_TX
uint8_t enable_cctx; // enables/disables cross-chroma component transform
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
- uint8_t enable_ibp; // enables/disables intra bi-prediction(IBP)
-#endif
+ uint8_t enable_ibp; // enables/disables intra bi-prediction(IBP)
#if CONFIG_ADAPTIVE_MVD
uint8_t enable_adaptive_mvd; // enables/disables adaptive MVD resolution
#endif // CONFIG_ADAPTIVE_MVD
@@ -1666,12 +1662,10 @@
*/
int spatial_layer_id;
-#if CONFIG_IBP_DIR
/*!
* Weights for IBP of directional modes.
*/
uint8_t *ibp_directional_weights[TX_SIZES_ALL][DIR_MODES_0_90];
-#endif
#if TXCOEFF_TIMER
int64_t cum_txcoeff_timer;
@@ -3324,7 +3318,7 @@
seq_level_idx != SEQ_LEVEL_7_0 && seq_level_idx != SEQ_LEVEL_7_1 &&
seq_level_idx != SEQ_LEVEL_7_2 && seq_level_idx != SEQ_LEVEL_7_3);
}
-#if CONFIG_IBP_DIR
+
// Intra derivative for second directional predictor of IBP
// second_dr_intra_derivative[x] = 64*64/dr_intra_derivative[x]
static const int16_t second_dr_intra_derivative[90] = {
@@ -3425,6 +3419,7 @@
weights += bw;
}
}
+
static const uint8_t angle_to_mode_index[90] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 15, 0, 0, 14, 0, 0, 13,
@@ -3471,6 +3466,7 @@
}
}
}
+
static INLINE void free_ibp_info(
uint8_t *weights[TX_SIZES_ALL][DIR_MODES_0_90]) {
for (int i = 0; i < TX_SIZES_ALL; i++) {
@@ -3479,7 +3475,6 @@
}
}
}
-#endif
static INLINE int is_global_intrabc_allowed(const AV1_COMMON *const cm) {
#if CONFIG_IBC_SR_EXT
diff --git a/av1/common/av1_rtcd_defs.pl b/av1/common/av1_rtcd_defs.pl
index 056dab4..c1ab084 100644
--- a/av1/common/av1_rtcd_defs.pl
+++ b/av1/common/av1_rtcd_defs.pl
@@ -231,12 +231,10 @@
add_proto qw/void av1_highbd_dr_prediction_z3/, "uint16_t *dst, ptrdiff_t stride, int bw, int bh, const uint16_t *above, const uint16_t *left, int upsample_left, int dx, int dy, int bd, int mrl_index";
specialize qw/av1_highbd_dr_prediction_z3 avx2/;
-#if CONFIG_IBP_DIR
add_proto qw / void av1_highbd_ibp_dr_prediction_z1 /,
"uint8_t* weights, uint16_t *dst, ptrdiff_t stride, uint16_t* second_pred, ptrdiff_t second_stride, int bw, int bh";
add_proto qw / void av1_highbd_ibp_dr_prediction_z3 /,
"uint8_t* weights, uint16_t *dst, ptrdiff_t stride, uint16_t* second_pred, ptrdiff_t second_stride, int bw, int bh";
-#endif
# build compound seg mask functions
add_proto qw/void av1_build_compound_diffwtd_mask_highbd/, "uint8_t *mask, DIFFWTD_MASK_TYPE mask_type, const uint16_t *src0, int src0_stride, const uint16_t *src1, int src1_stride, int h, int w, int bd";
diff --git a/av1/common/enums.h b/av1/common/enums.h
index 966a471..8f6fb47 100644
--- a/av1/common/enums.h
+++ b/av1/common/enums.h
@@ -1089,11 +1089,9 @@
#define MAX_EXTERNAL_REFERENCES 128
#define MAX_TILES 512
-#if CONFIG_IBP_DIR || CONFIG_IBP_DC
#define DIR_MODES_0_90 17
#define IBP_WEIGHT_SHIFT 8
#define IBP_WEIGHT_MAX 255
-#endif
#if CONFIG_WARP_REF_LIST
/*!\enum Warp projection type
diff --git a/av1/common/reconintra.c b/av1/common/reconintra.c
index 13ae2e5..77b7d96 100644
--- a/av1/common/reconintra.c
+++ b/av1/common/reconintra.c
@@ -805,7 +805,7 @@
pred_high[H_PRED][tx_size](dst, stride, above, left, bd);
}
}
-#if CONFIG_IBP_DIR
+
// Generate the second directional predictor for IBP
static void highbd_second_dr_predictor(uint16_t *dst, ptrdiff_t stride,
TX_SIZE tx_size, const uint16_t *above,
@@ -826,7 +826,7 @@
upsample_above, dx, dy, bd, 0);
}
}
-#endif
+
DECLARE_ALIGNED(16, const int8_t,
av1_filter_intra_taps[FILTER_INTRA_MODES][8][8]) = {
{
@@ -1109,7 +1109,7 @@
p[2 * i] = in[i + 2];
}
}
-#if CONFIG_IBP_DIR
+
void av1_highbd_ibp_dr_prediction_z1_c(uint8_t *weights, uint16_t *dst,
ptrdiff_t stride, uint16_t *second_pred,
ptrdiff_t second_stride, int bw,
@@ -1146,7 +1146,7 @@
weights += bh;
}
}
-#endif
+
static void build_intra_predictors_high(
const MACROBLOCKD *xd, const uint16_t *ref, int ref_stride, uint16_t *dst,
int dst_stride, PREDICTION_MODE mode, int angle_delta,
@@ -1157,26 +1157,16 @@
,
const int seq_intra_pred_filter_flag
#endif
-#if CONFIG_IBP_DIR || CONFIG_IBP_DC
,
- const int seq_ibp_flag
-#endif
-#if CONFIG_IBP_DIR
- ,
- uint8_t *const ibp_weights[TX_SIZES_ALL][DIR_MODES_0_90]
-#endif
-) {
+ const int seq_ibp_flag,
+ uint8_t *const ibp_weights[TX_SIZES_ALL][DIR_MODES_0_90]) {
int i;
DECLARE_ALIGNED(16, uint16_t, left_data[NUM_INTRA_NEIGHBOUR_PIXELS]);
DECLARE_ALIGNED(16, uint16_t, above_data[NUM_INTRA_NEIGHBOUR_PIXELS]);
-#if CONFIG_IBP_DIR
DECLARE_ALIGNED(16, uint16_t, second_pred_data[MAX_TX_SQUARE + 32]);
-#endif
uint16_t *const above_row = above_data + 32;
uint16_t *const left_col = left_data + 32;
-#if CONFIG_IBP_DIR
uint16_t *const second_pred = second_pred_data + 16;
-#endif
const int txwpx = tx_size_wide[tx_size];
const int txhpx = tx_size_high[tx_size];
int need_left = extend_modes[mode] & NEED_LEFT;
@@ -1220,11 +1210,9 @@
need_above = 1, need_left = 1, need_above_left = 1;
else
need_above = 0, need_left = 1, need_above_left = 1;
-#if CONFIG_IBP_DIR
if (seq_ibp_flag) {
need_above = 1, need_left = 1, need_above_left = 1;
}
-#endif
#if CONFIG_ORIP && !CONFIG_ORIP_NONDC_DISABLED
if (apply_sub_block_based_refinement_filter &&
@@ -1260,13 +1248,10 @@
if (need_left) {
int need_bottom = extend_modes[mode] & NEED_BOTTOMLEFT;
if (use_filter_intra) need_bottom = 0;
-#if CONFIG_IBP_DIR
if (is_dr_mode)
need_bottom =
seq_ibp_flag ? (p_angle < 90) || (p_angle > 180) : p_angle > 180;
-#else
- if (is_dr_mode) need_bottom = p_angle > 180;
-#endif
+
const int num_left_pixels_needed =
txhpx + (need_bottom ? txwpx : 3) + (mrl_index << 1);
i = 0;
@@ -1288,13 +1273,10 @@
if (need_above) {
int need_right = extend_modes[mode] & NEED_ABOVERIGHT;
if (use_filter_intra) need_right = 0;
-#if CONFIG_IBP_DIR
if (is_dr_mode)
need_right =
seq_ibp_flag ? (p_angle < 90) || (p_angle > 180) : p_angle < 90;
-#else
- if (is_dr_mode) need_right = p_angle < 90;
-#endif
+
const int num_top_pixels_needed =
txwpx + (need_right ? txhpx : 0) + (mrl_index << 1);
if (n_top_px > 0) {
@@ -1343,7 +1325,6 @@
int upsample_above = 0;
int upsample_left = 0;
if (!disable_edge_filter && mrl_index == 0) {
-#if CONFIG_IBP_DIR
int need_right = p_angle < 90;
int need_bottom = p_angle > 180;
int filt_type_above = get_filt_type(xd, plane);
@@ -1362,57 +1343,33 @@
angle_above = p_angle > 180 ? (p_angle - 180 - 90) : angle_above;
angle_left = p_angle < 90 ? p_angle : angle_left;
}
-#else
- const int need_right = p_angle < 90;
- const int need_bottom = p_angle > 180;
- const int filt_type = get_filt_type(xd, plane);
-#endif
+
if (p_angle != 90 && p_angle != 180) {
const int ab_le = need_above_left ? 1 : 0;
if (need_above && need_left && (txwpx + txhpx >= 24)) {
filter_intra_edge_corner_high(above_row, left_col);
}
if (need_above && n_top_px > 0) {
-#if CONFIG_IBP_DIR
const int strength = intra_edge_filter_strength(
txwpx, txhpx, angle_above, filt_type_above);
-#else
- const int strength =
- intra_edge_filter_strength(txwpx, txhpx, p_angle - 90, filt_type);
-#endif
const int n_px = n_top_px + ab_le + (need_right ? txhpx : 0);
av1_filter_intra_edge_high(above_row - ab_le, n_px, strength);
}
if (need_left && n_left_px > 0) {
-#if CONFIG_IBP_DIR
const int strength = intra_edge_filter_strength(
txhpx, txwpx, angle_left, filt_type_left);
-#else
- const int strength = intra_edge_filter_strength(
- txhpx, txwpx, p_angle - 180, filt_type);
-#endif
const int n_px = n_left_px + ab_le + (need_bottom ? txwpx : 0);
av1_filter_intra_edge_high(left_col - ab_le, n_px, strength);
}
}
-#if CONFIG_IBP_DIR
upsample_above = av1_use_intra_edge_upsample(txwpx, txhpx, angle_above,
filt_type_above);
-#else
- upsample_above =
- av1_use_intra_edge_upsample(txwpx, txhpx, p_angle - 90, filt_type);
-#endif
if (need_above && upsample_above) {
const int n_px = txwpx + (need_right ? txhpx : 0);
av1_upsample_intra_edge_high(above_row, n_px, xd->bd);
}
-#if CONFIG_IBP_DIR
upsample_left =
av1_use_intra_edge_upsample(txhpx, txwpx, angle_left, filt_type_left);
-#else
- upsample_left =
- av1_use_intra_edge_upsample(txhpx, txwpx, p_angle - 180, filt_type);
-#endif
if (need_left && upsample_left) {
const int n_px = txhpx + (need_bottom ? txwpx : 0);
av1_upsample_intra_edge_high(left_col, n_px, xd->bd);
@@ -1421,7 +1378,7 @@
highbd_dr_predictor(dst, dst_stride, tx_size, above_row, left_col,
upsample_above, upsample_left, p_angle, xd->bd,
mrl_index);
-#if CONFIG_IBP_DIR
+
if (seq_ibp_flag) {
if (mrl_index == 0) {
if (p_angle > 0 && p_angle < 90) {
@@ -1445,7 +1402,7 @@
}
}
}
-#endif
+
#if CONFIG_ORIP
#if !CONFIG_ORIP_NONDC_DISABLED
// Apply sub-block based filter for horizontal/vertical intra mode
@@ -1598,15 +1555,8 @@
,
cm->seq_params.enable_orip
#endif
-#if CONFIG_IBP_DIR || CONFIG_IBP_DC
,
- cm->seq_params.enable_ibp
-#endif
-#if CONFIG_IBP_DIR
- ,
- cm->ibp_directional_weights
-#endif
- );
+ cm->seq_params.enable_ibp, cm->ibp_directional_weights);
return;
}
diff --git a/av1/common/reconintra.h b/av1/common/reconintra.h
index ef051d1..d193249 100644
--- a/av1/common/reconintra.h
+++ b/av1/common/reconintra.h
@@ -291,13 +291,11 @@
return type ? (blk_wh <= 8) : (blk_wh <= 16);
}
-#if CONFIG_IBP_DIR
static const int32_t transpose_tx_size[TX_SIZES_ALL] = {
TX_4X4, TX_8X8, TX_16X16, TX_32X32, TX_64X64, TX_8X4, TX_4X8,
TX_16X8, TX_8X16, TX_32X16, TX_16X32, TX_64X32, TX_32X64, TX_16X4,
TX_4X16, TX_32X8, TX_8X32, TX_64X16, TX_16X64,
};
-#endif
#if CONFIG_EXT_RECUR_PARTITIONS
static AOM_INLINE void set_have_top_and_left(int *have_top, int *have_left,
diff --git a/av1/decoder/decodeframe.c b/av1/decoder/decodeframe.c
index ff770b9..3920205 100644
--- a/av1/decoder/decodeframe.c
+++ b/av1/decoder/decodeframe.c
@@ -6095,9 +6095,7 @@
? aom_rb_read_literal(rb, 2)
: AOM_OPFL_REFINE_NONE;
#endif // CONFIG_OPTFLOW_REFINEMENT
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
seq_params->enable_ibp = aom_rb_read_bit(rb);
-#endif
#if CONFIG_ADAPTIVE_MVD
seq_params->enable_adaptive_mvd = aom_rb_read_bit(rb);
#endif // CONFIG_ADAPTIVE_MVD
diff --git a/av1/encoder/bitstream.c b/av1/encoder/bitstream.c
index 57fec3f..110f436 100644
--- a/av1/encoder/bitstream.c
+++ b/av1/encoder/bitstream.c
@@ -4634,9 +4634,7 @@
if (seq_params->order_hint_info.enable_order_hint)
aom_wb_write_literal(wb, seq_params->enable_opfl_refine, 2);
#endif // CONFIG_OPTFLOW_REFINEMENT
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
aom_wb_write_bit(wb, seq_params->enable_ibp);
-#endif
#if CONFIG_ADAPTIVE_MVD
aom_wb_write_bit(wb, seq_params->enable_adaptive_mvd);
#endif // CONFIG_ADAPTIVE_MVD
diff --git a/av1/encoder/encoder.c b/av1/encoder/encoder.c
index f534dd9..035192c 100644
--- a/av1/encoder/encoder.c
+++ b/av1/encoder/encoder.c
@@ -489,9 +489,7 @@
#if CONFIG_CROSS_CHROMA_TX
seq->enable_cctx = oxcf->txfm_cfg.enable_cctx;
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
seq->enable_ibp = oxcf->intra_mode_cfg.enable_ibp;
-#endif
#if CONFIG_ADAPTIVE_MVD
seq->enable_adaptive_mvd = tool_cfg->enable_adaptive_mvd;
#endif // CONFIG_ADAPTIVE_MVD
@@ -1479,9 +1477,7 @@
}
dealloc_compressor_data(cpi);
-#if CONFIG_IBP_DIR
free_ibp_info(cm->ibp_directional_weights);
-#endif
#if CONFIG_INTERNAL_STATS
aom_free(cpi->ssim_vars);
diff --git a/av1/encoder/encoder.h b/av1/encoder/encoder.h
index b05668a..45ce4d9 100644
--- a/av1/encoder/encoder.h
+++ b/av1/encoder/encoder.h
@@ -290,12 +290,10 @@
*/
bool enable_orip;
#endif
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
/*!
* Flag to indicate if IBP should be enabled
*/
bool enable_ibp;
-#endif
} IntraModeCfg;
/*!
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake
index 4729bb7..f87d0b2 100644
--- a/build/cmake/aom_config_defaults.cmake
+++ b/build/cmake/aom_config_defaults.cmake
@@ -178,9 +178,6 @@
set_aom_config_var(CONFIG_OPTFLOW_REFINEMENT 1
"AV2 experiment flag for optical flow MV refinement")
set_aom_config_var(
- CONFIG_IBP_DIR 1
- "AV2 experiment flag to enable intra bi-prediction for directional modes.")
-set_aom_config_var(
CONFIG_IBP_DC 1
"AV2 experiment flag to enable intra bi-prediction for DC mode.")
set_aom_config_var(CONFIG_AIMC 1 "AV2 adaptive intra mode coding flag.")
diff --git a/common/args.c b/common/args.c
index e2d83e9..4d7152f 100644
--- a/common/args.c
+++ b/common/args.c
@@ -108,9 +108,7 @@
#if CONFIG_CROSS_CHROMA_TX
GET_PARAMS(enable_cctx);
#endif // CONFIG_CROSS_CHROMA_TX
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
GET_PARAMS(enable_ibp);
-#endif
#if CONFIG_ADAPTIVE_MVD
GET_PARAMS(enable_adaptive_mvd);
#endif // CONFIG_ADAPTIVE_MVD
diff --git a/common/av1_config.c b/common/av1_config.c
index d005c9a..6b80dda 100644
--- a/common/av1_config.c
+++ b/common/av1_config.c
@@ -273,9 +273,7 @@
#if CONFIG_ORIP
AV1C_READ_BIT_OR_RETURN_ERROR(enable_orip);
#endif
-#if CONFIG_IBP_DC || CONFIG_IBP_DIR
AV1C_READ_BIT_OR_RETURN_ERROR(enable_ibp);
-#endif
#if CONFIG_ADAPTIVE_MVD
AV1C_READ_BIT_OR_RETURN_ERROR(enable_adaptive_mvd);
#endif // CONFIG_ADAPTIVE_MVD