diff --git a/av1/encoder/encodetxb.c b/av1/encoder/encodetxb.c
index b35db0e..fa29c53 100644
--- a/av1/encoder/encodetxb.c
+++ b/av1/encoder/encodetxb.c
@@ -1775,6 +1775,7 @@
       &x->coeff_costs.coeff_costs[txs_ctx][plane_type];
   const MACROBLOCKD *const xd = &x->e_mbd;
   if (eob == 0) {
+    int skip_cost = 0;
 #if CONFIG_CROSS_CHROMA_TX && CCTX_C2_DROPPED
     if (plane == AOM_PLANE_V && !keep_chroma_c2(cctx_type) &&
         is_cctx_allowed(cm, xd))
@@ -1782,7 +1783,6 @@
 #endif  // CONFIG_CROSS_CHROMA_TX && CCTX_C2_DROPPED
 #if CONFIG_CONTEXT_DERIVATION
     int txb_skip_ctx = txb_ctx->txb_skip_ctx;
-    int skip_cost = 0;
     if (plane == AOM_PLANE_Y || plane == AOM_PLANE_U) {
       skip_cost += coeff_costs->txb_skip_cost[txb_skip_ctx][1];
     } else {
@@ -1869,9 +1869,9 @@
       &x->coeff_costs.coeff_costs[txs_ctx][plane_type];
   const MACROBLOCKD *const xd = &x->e_mbd;
   if (eob == 0) {
+    int skip_cost = 0;
 #if CONFIG_CONTEXT_DERIVATION
     int txb_skip_ctx = txb_ctx->txb_skip_ctx;
-    int skip_cost = 0;
     if (plane == AOM_PLANE_Y || plane == AOM_PLANE_U) {
       skip_cost += coeff_costs->txb_skip_cost[txb_skip_ctx][1];
     } else {
@@ -2007,8 +2007,12 @@
                                      int bwl, TX_CLASS tx_class
 #if CONFIG_CONTEXT_DERIVATION
                                      ,
-                                     int32_t *tmp_sign, int plane
+                                     int32_t *tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                     ,
+                                     int plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 ) {
   int cost = 0;
 #if CONFIG_ATC_COEFCODING
@@ -2077,8 +2081,12 @@
                                          const uint8_t *levels
 #if CONFIG_CONTEXT_DERIVATION
                                          ,
-                                         int32_t *tmp_sign, int plane
+                                         int32_t *tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                         ,
+                                         int plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 ) {
   int cost = 0;
   if (is_last) {
@@ -2197,8 +2205,12 @@
     const qm_val_t *iqmatrix
 #if CONFIG_CONTEXT_DERIVATION
     ,
-    int32_t *tmp_sign, int plane
+    int32_t *tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+    ,
+    int plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 #if CONFIG_PAR_HIDING
     ,
     coeff_info *coef_info, bool enable_parity_hiding
@@ -2244,8 +2256,12 @@
                                dc_sign_ctx, txb_costs, bwl, tx_class, levels
 #if CONFIG_CONTEXT_DERIVATION
                                ,
-                               tmp_sign, plane
+                               tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                               ,
+                               plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
         );
     const int64_t rd = RDCOST(rdmult, rate, dist);
 
@@ -2277,8 +2293,12 @@
                                  dc_sign_ctx, txb_costs, bwl, tx_class, levels
 #if CONFIG_CONTEXT_DERIVATION
                                  ,
-                                 tmp_sign, plane
+                                 tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                 ,
+                                 plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
           );
     }
 
@@ -2427,8 +2447,12 @@
     uint8_t *levels, int sharpness, const qm_val_t *iqmatrix
 #if CONFIG_CONTEXT_DERIVATION
     ,
-    int32_t *tmp_sign, int plane
+    int32_t *tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+    ,
+    int plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 #if CONFIG_PAR_HIDING
     ,
     coeff_info *coef_info, bool enable_parity_hiding
@@ -2479,8 +2503,12 @@
                                txb_costs, bwl, tx_class, levels
 #if CONFIG_CONTEXT_DERIVATION
                                ,
-                               tmp_sign, plane
+                               tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                               ,
+                               plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
         );
     int64_t rd = RDCOST(rdmult, *accu_rate + rate, *accu_dist + dist);
 
@@ -2511,8 +2539,12 @@
                                  dc_sign_ctx, txb_costs, bwl, tx_class, levels
 #if CONFIG_CONTEXT_DERIVATION
                                  ,
-                                 tmp_sign, plane
+                                 tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                 ,
+                                 plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
           );
       rd_low = RDCOST(rdmult, *accu_rate + rate_low, *accu_dist + dist_low);
     }
@@ -2530,8 +2562,12 @@
                                           dc_sign_ctx, txb_costs, bwl, tx_class
 #if CONFIG_CONTEXT_DERIVATION
                                           ,
-                                          tmp_sign, plane
+                                          tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                          ,
+                                          plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
                        );
     int64_t dist_new_eob = dist;
     int64_t rd_new_eob = RDCOST(rdmult, rate_coeff_eob, dist_new_eob);
@@ -2546,8 +2582,12 @@
                                             txb_costs, bwl, tx_class
 #if CONFIG_CONTEXT_DERIVATION
                                             ,
-                                            tmp_sign, plane
+                                            tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                            ,
+                                            plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
                          );
       const int64_t dist_new_eob_low = dist_low;
       const int64_t rd_new_eob_low =
@@ -2664,8 +2704,12 @@
                                  dc_sign_ctx, txb_costs, bwl, tx_class, levels
 #if CONFIG_CONTEXT_DERIVATION
                                  ,
-                                 0, 0
+                                 0
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                                 ,
+                                 0
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
   );
 
   const int base_ctx_ph = get_base_ctx_ph(levels, pos, bwl, tx_class);
@@ -3042,8 +3086,12 @@
                          qcoeff, dqcoeff, levels, iqmatrix
 #if CONFIG_CONTEXT_DERIVATION
                          ,
-                         xd->tmp_sign, plane
+                         xd->tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                         ,
+                         plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 #if CONFIG_PAR_HIDING
                          ,
                          coef_info, enable_parity_hiding
@@ -3058,8 +3106,12 @@
                            txb_costs, bwl, tx_class
 #if CONFIG_CONTEXT_DERIVATION
                            ,
-                           xd->tmp_sign, plane
+                           xd->tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                           ,
+                           plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
         );
     const tran_low_t tqc = tcoeff[ci];
     const tran_low_t dqc = dqcoeff[ci];
@@ -3079,8 +3131,12 @@
                      dqcoeff, levels, sharpness, iqmatrix
 #if CONFIG_CONTEXT_DERIVATION
                      ,
-                     xd->tmp_sign, plane
+                     xd->tmp_sign
 #endif
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                     ,
+                     plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
                      ,
                      coef_info, enable_parity_hiding);
   }
@@ -3199,8 +3255,12 @@
                          qcoeff, dqcoeff, levels, iqmatrix
 #if CONFIG_CONTEXT_DERIVATION
                          ,
-                         xd->tmp_sign, plane
+                         xd->tmp_sign
 #endif  // CONFIG_CONTEXT_DERIVATION
+#if CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
+                         ,
+                         plane
+#endif  // CONFIG_CONTEXT_DERIVATION || CONFIG_ATC_COEFCODING
 #if CONFIG_PAR_HIDING
                          ,
                          coef_info, enable_parity_hiding
