diff --git a/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy=pbum2_derefidx_vbuyy.asm b/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy=pbum2_derefidx_vbuyy.asm
new file mode 100644
index 000000000..efee7551f
--- /dev/null
+++ b/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy=pbum2_derefidx_vbuyy.asm
@@ -0,0 +1,11 @@
+lda {m1}
+sta $fc
+lda {m1}+1
+sta $fd
+lda {m2}
+sta $fe
+lda {m2}+1
+sta $ff
+lda ($fc),y
+lda ($fe),y
+
diff --git a/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy_eq_pbum2_derefidx_vbuyy_then_la1.asm b/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy_eq_pbum2_derefidx_vbuyy_then_la1.asm
new file mode 100644
index 000000000..e39d39255
--- /dev/null
+++ b/src/main/fragment/mos6502-common/pbum1_derefidx_vbuyy_eq_pbum2_derefidx_vbuyy_then_la1.asm
@@ -0,0 +1,12 @@
+lda {m1}
+sta $fc
+lda {m1}+1
+sta $fd
+lda {m2}
+sta $fe
+lda {m2}+1
+sta $ff
+lda ($fc),y
+cmp ($fe),y
+beq {la1}
+
diff --git a/src/main/java/dk/camelot64/kickc/model/VariableBuilder.java b/src/main/java/dk/camelot64/kickc/model/VariableBuilder.java
index 93d6b8b5a..5c454f050 100644
--- a/src/main/java/dk/camelot64/kickc/model/VariableBuilder.java
+++ b/src/main/java/dk/camelot64/kickc/model/VariableBuilder.java
@@ -53,12 +53,16 @@ public class VariableBuilder {
 
    public static VariableBuilderConfig getDefaultConfig(CompileLog log) {
       VariableBuilderConfig config = new VariableBuilderConfig();
+
       //config.addSetting("ssa_mem", log, null);
       //config.addSetting("pointer_ssa_zp", log, null);
       //config.addSetting("array_ma_mem", log, null);
       //config.addSetting("global_struct_ma_mem", log, null);
 
-      config.addSetting("parameter_ssa_mem", log, null);
+      //config.addSetting("ma_mem", log, null);
+      //config.addSetting("pointer_ma_zp", log, null);
+      //config.addSetting("parameter_ssa_mem", log, null);
+
       config.addSetting("ssa_zp", log, null);
       config.addSetting("array_ma_mem", log, null);
       config.addSetting("global_struct_ma_mem", log, null);
diff --git a/src/main/java/dk/camelot64/kickc/passes/Pass2AliasElimination.java b/src/main/java/dk/camelot64/kickc/passes/Pass2AliasElimination.java
index a8a0db5c7..8e7ae7961 100644
--- a/src/main/java/dk/camelot64/kickc/passes/Pass2AliasElimination.java
+++ b/src/main/java/dk/camelot64/kickc/passes/Pass2AliasElimination.java
@@ -128,7 +128,6 @@ public class Pass2AliasElimination extends Pass2SsaOptimization {
                   if(assignment.getrValue1() == null && assignment.getOperator() == null && assignment.getrValue2() instanceof VariableRef) {
                      // Alias assignment
                      VariableRef alias = (VariableRef) assignment.getrValue2();
-
                      List<ControlFlowGraph.VarAssignment> assignments = ControlFlowGraph.getVarAssignments(alias, program.getGraph(), program.getScope());
                      if(assignments.size() == 0)
                         throw new InternalError("Error! Var is never assigned! " + variable);
@@ -136,11 +135,11 @@ public class Pass2AliasElimination extends Pass2SsaOptimization {
                         // Multiple assignments exist
                         continue;
                      // assignments.size()==1
-                     // Examine if the alias is assigned inside another scope
                      ControlFlowGraph.VarAssignment varAssignment = assignments.get(0);
                      if(ControlFlowGraph.VarAssignment.Type.INIT_VALUE.equals(varAssignment.type)) {
                         aliases.add(variable, alias);
                      } else {
+                        // Examine if the alias is assigned inside another scope
                         ScopeRef varAssignmentScope = block.getScope();
                         ScopeRef aliasAssignmentScope = varAssignment.block.getScope();
                         if(!alias.isIntermediate() && (!varAssignmentScope.equals(aliasAssignmentScope) || !variable.getScopeNames().equals(alias.getScopeNames()))) {
@@ -151,21 +150,7 @@ public class Pass2AliasElimination extends Pass2SsaOptimization {
                            aliases.add(variable, alias);
                         }
                      }
-
-                     /*
-                     // Examine if the alis is assigned inside another scope
-                     ControlFlowBlock aliasAssignmentBlock = program.getGraph().getAssignmentBlock(alias);
-                     ScopeRef aliasScope = aliasAssignmentBlock.getScope();
-                     ScopeRef varScope = block.getScope();
-                     if(!alias.isIntermediate() && (!varScope.equals(aliasScope) || !variable.getScopeNames().equals(alias.getScopeNames()))) {
-                        if(program.getLog().isVerboseNonOptimization()) {
-                           program.getLog().append("Not aliassing across scopes: " + variable + " " + alias);
-                        }
-                     } else {
-                        aliases.add(variable, alias);
-                     }
-                      */
-                  }
+                 }
                }
             } else if(statement instanceof StatementPhiBlock) {
                StatementPhiBlock phi = (StatementPhiBlock) statement;
@@ -177,6 +162,38 @@ public class Pass2AliasElimination extends Pass2SsaOptimization {
                         // First rValue
                         if(phiRValue.getrValue() instanceof VariableRef) {
                            alias = (VariableRef) phiRValue.getrValue();
+                           if(variable.equals(alias)) {
+                              if(program.getLog().isVerboseNonOptimization()) {
+                                 program.getLog().append("Not aliassing identity: " + variable + " " + alias);
+                              }
+                              alias = null;
+                              break;
+                           }
+                           List<ControlFlowGraph.VarAssignment> assignments = ControlFlowGraph.getVarAssignments(alias, program.getGraph(), program.getScope());
+                           if(assignments.size() == 0)
+                              throw new InternalError("Error! Var is never assigned! " + variable);
+                           if(assignments.size() > 1) {
+                              // Multiple assignments exist
+                              alias = null;
+                              break;
+                           }
+                           // assignments.size()==1
+                           ControlFlowGraph.VarAssignment varAssignment = assignments.get(0);
+                           if(!ControlFlowGraph.VarAssignment.Type.INIT_VALUE.equals(varAssignment.type)) {
+                              // Examine if the alias is assigned inside another scope
+                              ScopeRef varAssignmentScope = block.getScope();
+                              ScopeRef aliasAssignmentScope = varAssignment.block.getScope();
+                              if(!alias.isIntermediate() && (!varAssignmentScope.equals(aliasAssignmentScope) || !variable.getScopeNames().equals(alias.getScopeNames()))) {
+                                 if(program.getLog().isVerboseNonOptimization()) {
+                                    program.getLog().append("Not aliassing across scopes: " + variable + " " + alias);
+                                 }
+                                 alias = null;
+                                 break;
+                              }
+                           }
+
+
+                           /*
                            // Examine if the alis is assigned inside another scope
                            ControlFlowBlock aliasAssignmentBlock = program.getGraph().getAssignmentBlock(alias);
                            ScopeRef aliasScope = aliasAssignmentBlock.getScope();
@@ -194,6 +211,7 @@ public class Pass2AliasElimination extends Pass2SsaOptimization {
                               alias = null;
                               break;
                            }
+                           */
                         } else {
                            // Not aliasing non-variables
                            break;
diff --git a/src/test/ref/fragments-assignment-binary-_deref_pbuz1.log b/src/test/ref/fragments-assignment-binary-_deref_pbuz1.log
index 8f16e5f75..f2dfb764b 100644
--- a/src/test/ref/fragments-assignment-binary-_deref_pbuz1.log
+++ b/src/test/ref/fragments-assignment-binary-_deref_pbuz1.log
@@ -1025,7 +1025,19 @@ synthesized _deref_pbuz1=_deref_pbuz2_plus_pbuz1_derefidx_vbuyy < _deref_pbuz1=p
   adc ({z2}),y
   ldy #0
   sta ({z1}),y
-CANNOT SYNTHESIZE _deref_pbuz1=_deref_pbuz2_band_pbuz1_derefidx_vbuz2
+synthesized _deref_pbuz1=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < _deref_pbuz1=_deref_pbum2_band_pbuz1_derefidx_vbum2 < _deref_pbuz1=_deref_pbum2_band_pbuz1_derefidx_vbuxx < _deref_pbuz1=pbuz1_derefidx_vbuxx_band__deref_pbum2 < vbuaa=pbuz1_derefidx_vbuxx_band__deref_pbum2 < vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_band_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:42.0
+  ldx {z2}
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  and ({z1}),y
+  ldy #0
+  sta ({z1}),y
 synthesized _deref_pbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < _deref_pbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbum3 < _deref_pbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < _deref_pbuz1=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < vbuaa=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:24.0
   ldy {z3}
   lda ({z1}),y
@@ -1179,6 +1191,18 @@ synthesized _deref_pbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < vbuaa=_deref_
   sbc {c1},x
   ldy #0
   sta ({z1}),y
+synthesized _deref_pbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < _deref_pbuz1=_deref_pbum2_minus_pbuc1_derefidx_vbuz1 < vbuaa=_deref_pbum2_minus_pbuc1_derefidx_vbuz1 < vbuaa=_deref_pbum2_minus_pbuc1_derefidx_vbum1 < vbuaa=_deref_pbum1_minus_pbuc1_derefidx_vbum2 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:37.0
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z1}
+  sec
+  sbc {c1},y
+  ldy #0
+  sta ({z1}),y
 synthesized _deref_pbuz1=_deref_pbuz2_plus_pbuc1_derefidx_vbuz2 < _deref_pbuz1=pbuc1_derefidx_vbuz2_plus__deref_pbuz2 < vbuaa=pbuc1_derefidx_vbuz1_plus__deref_pbuz1 < vbuaa=_deref_pbuz1_plus_pbuc1_derefidx_vbuz1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuz1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:25.0
   ldy #0
   lda ({z2}),y
@@ -1212,7 +1236,7 @@ synthesized _deref_pbuz1=_deref_pbuc1_bxor_vbuaa < _deref_pbuz1=vbuaa_bxor__dere
   eor {c1}
   ldy #0
   sta ({z1}),y
-synthesized _deref_pbuz1=_deref_pbuc1_bxor_vbuxx < _deref_pbuz1=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:14.0
+synthesized _deref_pbuz1=_deref_pbuc1_bxor_vbuxx < _deref_pbuz1=_deref_pbuc1_bxor_vbuaa < _deref_pbuz1=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:14.0
   txa
   eor {c1}
   ldy #0
@@ -1841,7 +1865,19 @@ synthesized _deref_pbuz1=pbuz1_derefidx_vbuz2_plus_vbuz3 < _deref_pbuz1=pbuz1_de
   adc ({z1}),y
   ldy #0
   sta ({z1}),y
-CANNOT SYNTHESIZE _deref_pbuz1=pbuz1_derefidx_vbuz2_band__deref_pbuz2
+synthesized _deref_pbuz1=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < vbuaa=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < vbuaa=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbum2 < vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_band_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:42.0
+  ldx {z2}
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  and ({z1}),y
+  ldy #0
+  sta ({z1}),y
 synthesized _deref_pbuz1=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < _deref_pbuz1=pbuz1_derefidx_vbum2_bor__deref_pbuz3 < _deref_pbuz1=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < vbuaa=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:24.0
   ldy {z2}
   lda ({z1}),y
@@ -2911,7 +2947,7 @@ synthesized _deref_pbuz1=pbuz2_derefidx_vbuz3_plus_vbuaa < vbuaa=pbuz1_derefidx_
   adc ({z2}),y
   ldy #0
   sta ({z1}),y
-synthesized _deref_pbuz1=pbuz2_derefidx_vbuz3_band_vbuyy < _deref_pbuz1=vbuyy_band_pbuz2_derefidx_vbuz3 < _deref_pbuz1=vbuaa_band_pbuz2_derefidx_vbuz3 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbuz2_band_vbuaa < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.5
+synthesized _deref_pbuz1=pbuz2_derefidx_vbuz3_band_vbuyy < _deref_pbuz1=pbuz2_derefidx_vbum3_band_vbuyy < _deref_pbuz1=pbuz2_derefidx_vbum3_band_vbuaa < _deref_pbuz1=pbuz2_derefidx_vbuyy_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.5
   tya
   ldy {z3}
   and ({z2}),y
@@ -4650,7 +4686,7 @@ synthesized _deref_pbuz1=pbuc1_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuc1_de
   and {c1},y
   ldy #0
   sta ({z1}),y
-synthesized _deref_pbuz1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < _deref_pbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:22.0
+synthesized _deref_pbuz1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < _deref_pbuz1=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:22.0
   ldy #0
   lda ({z2}),y
   ldy #{c1}
diff --git a/src/test/ref/fragments-assignment-binary-pbuc1_derefidx_vbuz1.log b/src/test/ref/fragments-assignment-binary-pbuc1_derefidx_vbuz1.log
index cb9ef70b0..f8121aace 100644
--- a/src/test/ref/fragments-assignment-binary-pbuc1_derefidx_vbuz1.log
+++ b/src/test/ref/fragments-assignment-binary-pbuc1_derefidx_vbuz1.log
@@ -347,7 +347,7 @@ synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuaa < pbuc1_derefid
   adc {c2},y
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuaa < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:22.5
+synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuaa < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:22.5
   tay
   lda {c2},y
   ldy {z1}
@@ -361,7 +361,7 @@ synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefid
   adc {c2},y
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:20.5
+synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:20.5
   lda {c2},y
   ldy {z1}
   stx $ff
@@ -375,7 +375,7 @@ synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuz2 < pbuc1_derefid
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbum2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:23.5
+synthesized pbuc1_derefidx_vbuz1=vbuxx_plus_pbuc2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbum2 < pbuc1_derefidx_vbum1=vbuxx_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:23.5
   ldy {z2}
   lda {c2},y
   ldy {z1}
@@ -412,7 +412,7 @@ synthesized pbuc1_derefidx_vbuz1=vbuyy_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuyy_bo
   sty $ff
   ora $ff
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=vbuyy_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbum1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_bor_vbuaa < vbuaa=vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_vbuxx - clobber:A Y  cycles:16.0
+synthesized pbuc1_derefidx_vbuz1=vbuyy_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbum1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A Y  cycles:16.0
   tya
   ldy {z1}
   stx $ff
@@ -459,7 +459,7 @@ synthesized pbuc1_derefidx_vbuz1=vbuyy_minus_pbuz1_derefidx_vbuz2 < pbuc1_derefi
   sbc $ff
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=vbuyy_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:27.5
+synthesized pbuc1_derefidx_vbuz1=vbuyy_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:27.5
   tya
   ldy #{c2}
   tax
@@ -1132,14 +1132,14 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_minus__deref_pbuz1 < pbuc1_derefid
   sec
   sbc $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:21.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:21.5
   ldy #0
   lda ({z1}),y
   ldy {z1}
   clc
   adc {c1}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:33.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:33.0
   tay
   lda ({z1}),y
   tax
@@ -1150,7 +1150,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuaa < pbuc1_
   clc
   adc $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:31.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:31.0
   lda ({z1}),y
   tax
   ldy #0
@@ -1181,14 +1181,14 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuyy < pbuc1_d
   ora ({z2}),y
   sta {c1},x
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuz2
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:23.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:23.0
   ldy #0
   lda ({z1}),y
   ldx {z1}
   ldy #{c1}
   ora ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:29.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:29.0
   ldy #0
   lda ({z1}),y
   ldy {z1}
@@ -1265,7 +1265,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuz1 < pbuc1_
   clc
   adc {c2},y
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:24.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:24.0
   ldy #0
   lda ({z1}),y
   ldx #{c1}
@@ -1273,7 +1273,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:30.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:30.0
   ldy #0
   lda ({z1}),y
   ldy {z1}
@@ -1284,7 +1284,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_
   adc {c2},y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_band_vbuc1 < pbuc1_derefidx_vbuz1=vbuc1_band__deref_pbuz1 < pbuc1_derefidx_vbuz1=vbuc1_band_vbuaa < pbuc1_derefidx_vbum1=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:17.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz1_band_vbuc1 < pbuc1_derefidx_vbuz1=vbuc1_band__deref_pbuz1 < pbuc1_derefidx_vbuz1=vbuc1_band_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_band_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_band_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:17.5
   ldy #0
   lda ({z1}),y
   ldy {z1}
@@ -1350,14 +1350,14 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_bor__deref_pbuz1 < pbuc1_derefidx_
   ora ({z2}),y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbuxx=_deref_pbuz1_bxor__deref_pbuz2 < pbuc1_derefidx_vbuxx=_deref_pbuz2_bxor__deref_pbuz1 < pbuc1_derefidx_vbuxx=_deref_pbuz1_bxor_vbuaa < pbuc1_derefidx_vbuxx=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:23.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbuxx=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:23.0
   ldx {z1}
   ldy #0
   lda ({z2}),y
   ldy #0
   eor ({z3}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbuyy=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=_deref_pbuz2_bxor__deref_pbuz1 < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:29.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor__deref_pbuz3 < pbuc1_derefidx_vbuyy=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=_deref_pbuz1_bxor__deref_pbuz2 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:29.0
   ldy {z1}
   sty $ff
   
@@ -1524,6 +1524,17 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < pbuc1
   sec
   sbc {c1},x
   sta {c1},x
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < pbuc1_derefidx_vbum1=_deref_pbuz2_minus_pbuc1_derefidx_vbum1 < pbuc1_derefidx_vbum1=_deref_pbum2_minus_pbuc1_derefidx_vbum1 < pbuc1_derefidx_vbum1=vbuaa_minus_pbuc1_derefidx_vbum1 < pbuc1_derefidx_vbuyy=vbuaa_minus_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_minus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:34.0
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z1}
+  sec
+  sbc {c1},y
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz3 < pbuc1_derefidx_vbum1=_deref_pbuz2_minus_pbuc1_derefidx_vbum3 < pbuc1_derefidx_vbuxx=_deref_pbuz1_minus_pbuc1_derefidx_vbum2 < pbuc1_derefidx_vbuxx=vbuaa_minus_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:25.0
   ldx {z1}
   ldy #0
@@ -1596,7 +1607,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_plus_pbuc2_derefidx_vbuz1 < pbuc1_
   adc ({z2}),y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=_deref_pbuz2_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=_deref_pbuz1_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_band__deref_pbuz1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_band_vbuaa < pbuc1_derefidx_vbuxx=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:22.0
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuz2_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=_deref_pbuz2_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=_deref_pbuz1_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuc2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc2_band__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:22.0
   ldx {z1}
   ldy #0
   lda ({z2}),y
@@ -1748,7 +1759,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuc1_minus_pbuz1_derefidx_vbuz2 < pbuc1
   sbc $ff
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:21.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:21.5
   ldy #{c2}
   lda ({z1}),y
   ldy {z1}
@@ -1967,13 +1978,13 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bor_pbuz1_derefidx_vbuyy < pbuc1_d
   ldy {z1}
   ora {c2}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:20.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:20.5
   ldy {z2}
   lda ({z1}),y
   ldy {z1}
   eor {c2}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:19.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:19.5
   ldy #{c2}
   lda ({z1}),y
   ldy {z1}
@@ -2134,7 +2145,7 @@ synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuc2 < pbuc1_
   eor {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:18.5
+synthesized pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:18.5
   ldy #{c2}
   lda {c2},y
   ldy {z1}
@@ -2248,7 +2259,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_band_vbuz1 < pbuc1_derefid
   ldy {z1}
   and {z1}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbum1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_bor_vbuaa < vbuaa=vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:31.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_bor__deref_pbuz1 < pbuc1_derefidx_vbuz1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbum1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:31.0
   tay
   lda ({z1}),y
   tax
@@ -2412,7 +2423,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_bxor_vbuc2 < pbuc1_derefid
   sta {c1},y
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_minus_vbuxx
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_minus_vbuz1
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:35.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus__deref_pbuz1 < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuz1_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:35.0
   txa
   tay
   lda ({z1}),y
@@ -2424,7 +2435,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuz1 < pbuc1_
   clc
   adc $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:23.5
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuc1 < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus__deref_pbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:23.5
   txa
   tay
   lda ({z1}),y
@@ -2432,7 +2443,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus__deref_pbuc1 < pbuc1_
   clc
   adc {c1}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:37.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:37.0
   tay
   lda ({z1}),y
   stx $ff
@@ -2515,7 +2526,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_band_pbuc2_derefidx_vbuc2
   and {c2},y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_band_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_band_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_band_vbuc1 < pbuc1_derefidx_vbuz1=vbuc1_band_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuc1_band_vbuaa < pbuc1_derefidx_vbum1=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:19.5
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuxx_band_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuaa_band_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_band_vbuc1 < pbuc1_derefidx_vbuz1=vbuc1_band_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuc1_band_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_band_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_band_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:19.5
   txa
   tay
   lda ({z1}),y
@@ -2545,13 +2556,13 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bor_vbuz2 < pbuc1_derefidx
   ldy {z1}
   ora {z2}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuxx=_deref_pbuz1_bxor_vbuaa < pbuc1_derefidx_vbuxx=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:21.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbuxx=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:21.0
   lda ({z1}),y
   ldx {z1}
   ldy #0
   eor ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuz1_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:27.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:27.0
   lda ({z1}),y
   ldy {z1}
   sty $ff
@@ -2560,12 +2571,12 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_
   eor ({z2}),y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X   cycles:17.5
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X   cycles:17.5
   lda ({z1}),y
   eor {c2}
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:17.5
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:17.5
   lda ({z1}),y
   ldy {z1}
   eor {c2}
@@ -2716,7 +2727,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_bxor_vbuz3 < pbuc1_derefid
   sta {c1},y
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_minus__deref_pbuz2
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_minus__deref_pbuc1
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:34.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:34.0
   tay
   lda ({z1}),y
   ldy {z2}
@@ -2727,7 +2738,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuaa
   adc $ff
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:32.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:32.0
   lda ({z1}),y
   ldy {z2}
   tax
@@ -2918,7 +2929,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc1 < pbuc1_
   ldy {z1}
   eor {c1}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc3 < pbuc1_derefidx_vbuz1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:19.5
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc3 < pbuc1_derefidx_vbuz1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:19.5
   ldy #{c2}
   lda ({z1}),y
   ldy {z1}
@@ -2927,7 +2938,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc3 < pbuc1_
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_bxor_pbuz1_derefidx_vbuxx
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_minus_pbuz1_derefidx_vbuz1
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_minus_pbuz1_derefidx_vbuc1
-synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbum1=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:33.0
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuaa < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:33.0
   ldy #{c2}
   lda ({z1}),y
   ldy #{c3}
@@ -4518,7 +4529,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_band__deref_pbuc2 < pbuc1_
   and ({z2}),y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:25.0
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:25.0
   txa
   tay
   lda ({z1}),y
@@ -4526,7 +4537,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx <
   ldy #{c1}
   ora ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:31.0
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuaa < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:31.0
   txa
   tay
   lda ({z1}),y
@@ -4538,14 +4549,14 @@ synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuxx <
   ldy $ff
   sta {c1},y
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuz1
-synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuz3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbum3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:24.0
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuz3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbum3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:24.0
   ldy {z3}
   lda ({z1}),y
   ldx {z1}
   ldy #{c1}
   ora ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuz3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbum3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:30.0
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuz3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbum3 < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:30.0
   ldy {z3}
   lda ({z1}),y
   ldy {z1}
@@ -4639,7 +4650,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_band_pbuc1_derefidx_vbuxx
   and ({z2}),y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuc1_derefidx_vbuz1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_pbuc1_derefidx_vbuxx < pbuc1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:20.0
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuc1_bor_pbuc1_derefidx_vbuz1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_pbuc1_derefidx_vbuxx < pbuc1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:20.0
   ldx {z1}
   lda {c1},x
   ldy #{c1}
@@ -6441,7 +6452,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuz2_band_vbuc1 < pbuc1_derefid
   and {c1},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuz2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuz2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbum2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuyy_band_vbuc1 < pbuc1_derefidx_vbum1=vbuc1_band_pbuc1_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:17.5
+synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuz2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuz2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbum2_band_vbuc1 < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuyy_band_vbuc1 < pbuc1_derefidx_vbum1=vbuc1_band_pbuc1_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuc1_band_vbuaa < pbuc1_derefidx_vbum1=vbuaa_band_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:17.5
   ldy {z2}
   lda {c1},y
   ldy {z1}
@@ -6746,7 +6757,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuc2_plus_vbuyy < pbuc1_derefid
   adc {c1},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuc2_plus_vbuyy < pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.5
+synthesized pbuc1_derefidx_vbuz1=pbuc1_derefidx_vbuc2_plus_vbuyy < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuc2_plus_vbuyy < pbuc1_derefidx_vbum1=pbuc1_derefidx_vbuc2_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.5
   tya
   ldy {z1}
   sty $ff
@@ -7154,7 +7165,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuaa_plus_vbuxx < pbuc1_derefid
   adc {c2},y
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:22.5
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuaa_plus_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbum1=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A Y  cycles:22.5
   tay
   lda {c2},y
   ldy {z1}
@@ -7757,7 +7768,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuxx_plus_pbuc3_derefidx_vbuc1
   adc {c3},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuxx_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuxx_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuxx_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuxx_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   lda {c2},x
   ldy {z1}
   sty $ff
@@ -7820,13 +7831,13 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_vbuz2 < pbuc1_derefidx
   ldy {z1}
   ora {z2}
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuxx=_deref_pbuz1_bxor_vbuaa < pbuc1_derefidx_vbuxx=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:20.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbuxx=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:20.0
   lda {c2},y
   ldx {z1}
   ldy #0
   eor ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuz1_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:26.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bxor__deref_pbuz2 < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=_deref_pbuz2_bxor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuz2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz1 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:26.0
   lda {c2},y
   ldy {z1}
   sty $ff
@@ -7840,7 +7851,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_
   eor {c2},y
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbum1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:16.5
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bxor__deref_pbuc2 < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbuz1=_deref_pbuc2_bxor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbum1=vbuaa_bxor__deref_pbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:16.5
   lda {c2},y
   ldy {z1}
   eor {c2}
@@ -8074,7 +8085,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_band_pbuc3_derefidx_vbuc1
   and {c3},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_band_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_band_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_band_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_band_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:25.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_band_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_band_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_band_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_band_vbuaa < pbuc1_derefidx_vbum1=vbuaa_band_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:25.0
   lda {c2},y
   ldy {z1}
   sty $ff
@@ -8113,7 +8124,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_vbuc3 < pbuc1_derefidx
   ldx {z1}
   ora {c2},y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_vbuc3 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bor_vbuc3 < pbuc1_derefidx_vbum1=vbuc3_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuc2_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuc2_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bor_vbuc2 < vbuaa=vbuaa_bor_vbuc2 < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:14.5
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_vbuc3 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_bor_vbuc3 < pbuc1_derefidx_vbum1=vbuc3_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=vbuc2_bor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bor_vbuc2 < pbuc1_derefidx_vbuyy=vbuaa_bor_vbuc2 < vbuaa=vbuaa_bor_vbuc2 < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:14.5
   lda {c2},y
   ldy {z1}
   ora #{c3}
@@ -8326,7 +8337,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1_plus_pbuc2_derefidx_vbuc1
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbum1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_plus_vbuaa < vbuaa=pbuc2_derefidx_vbuc1_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:21.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuz1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbum1_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbuxx=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuxx=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:21.0
   ldx {z1}
   lda {c2},x
   ldy #{c1}
@@ -9036,7 +9047,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_minus_pbuz1_derefidx_vbuz2
   sbc $ff
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:24.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:24.0
   ldy #{c2}
   lda ({z1}),y
   ldx #{c1}
@@ -9044,7 +9055,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuc2
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:30.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:30.0
   ldy #{c2}
   lda ({z1}),y
   ldy {z1}
@@ -9231,7 +9242,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc2
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
   ldy #{c2}
   lda {c2},y
   ldy {z1}
@@ -9481,14 +9492,14 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_band_pbuz2_derefidx_vbuyy
   ldy $ff
   sta {c1},y
 CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuz2
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:22.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:22.0
   ldx #{c2}
   lda {c2},x
   ldx {z1}
   ldy #{c1}
   ora ({z2}),y
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:28.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc2_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < pbuc1_derefidx_vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:28.0
   ldy #{c2}
   lda {c2},y
   ldy {z1}
@@ -9606,7 +9617,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1
   adc {c2},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc2_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
   ldy #{c2}
   lda {c2},y
   ldy {z1}
@@ -9845,7 +9856,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_band_pbuz1_derefidx_vbuc2
   and {c2},y
   ldy $ff
   sta {c1},y
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_bor_pbuz1_derefidx_vbuc4 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc4_bor_pbuc2_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc4_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_pbuz1_derefidx_vbuc4 < pbuc1_derefidx_vbuz1=vbuxx_bor_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_bor_vbuxx < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbum1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbuyy=vbuxx_bor_vbuaa < vbuaa=vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:28.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_bor_pbuz1_derefidx_vbuc4 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc4_bor_pbuc2_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc4_bor_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuyy_bor_pbuz1_derefidx_vbuc4 < pbuc1_derefidx_vbuz1=vbuxx_bor_pbuz1_derefidx_vbuc3 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc3_bor_vbuxx < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy_bor_vbuxx < pbuc1_derefidx_vbuz1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuxx_bor_vbuaa < pbuc1_derefidx_vbuz1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbum1=vbuaa_bor_vbuxx < pbuc1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:28.0
   ldy #{c3}
   ldx {c2},y
   ldy #{c4}
@@ -10168,7 +10179,7 @@ synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_plus_pbuc4_derefidx_vbuc1
   adc {c4},x
   ldx {z1}
   sta {c1},x
-synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc3_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc4_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc3 < pbuc1_derefidx_vbum1=pbuc4_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
+synthesized pbuc1_derefidx_vbuz1=pbuc2_derefidx_vbuc3_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc3_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc4_derefidx_vbuc1_plus_pbuc2_derefidx_vbuc3 < pbuc1_derefidx_vbum1=pbuc4_derefidx_vbuc1_plus_pbuc2_derefidx_vbuyy < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuyy_plus_pbuc4_derefidx_vbuc1 < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc3_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbuc3_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=pbuc2_derefidx_vbuc1_plus_vbuaa < pbuc1_derefidx_vbum1=vbuaa_plus_pbuc2_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc2_derefidx_vbuc1 < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuc2 < vbuaa=pbuc1_derefidx_vbuc2_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:29.0
   ldy #{c3}
   lda {c2},y
   ldy {z1}
diff --git a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuaa.log b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuaa.log
index 421f3220a..ad163608b 100644
--- a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuaa.log
+++ b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuaa.log
@@ -174,7 +174,7 @@ synthesized pbuz1_derefidx_vbuaa=vbuxx_minus_vbuxx < vbuaa=vbuxx_minus_vbuxx - c
   tay
   lda #0
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=vbuxx_plus_vbuyy < vbuaa=vbuxx_plus_vbuyy < vbuaa=vbuaa_plus_vbuyy - clobber:A Y  cycles:22.0
+synthesized pbuz1_derefidx_vbuaa=vbuxx_plus_vbuyy < pbuz1_derefidx_vbuaa=vbuyy_plus_vbuxx < vbuaa=vbuyy_plus_vbuxx < vbuaa=vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_vbuyy - clobber:A Y  cycles:22.0
   sta $ff
   txa
   sty $ff
@@ -916,7 +916,22 @@ synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_plus_pbuz1_derefidx_vbuyy < pbuz1_
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz1_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:50.0
+  ldy {z2}
+  tax
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbum3 < pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor__deref_pbuz2 < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A X Y  cycles:30.0
   ldy {z3}
   tax
@@ -1029,7 +1044,7 @@ synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz3_derefidx_vbuz4 < pbuz1_
   and ({z3}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   sta $ff
   ldy #0
   lda ({z2}),y
@@ -1419,7 +1434,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuaa <
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_bxor_pbuz1_derefidx_vbuxx
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_bxor_pbuz1_derefidx_vbuyy
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_minus_pbuz1_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:48.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:48.0
   ldy {z2}
   tax
   lda ({z1}),y
@@ -1436,7 +1451,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuz2
   adc $ff
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc1_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:47.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc1_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:47.0
   ldy #{c1}
   tax
   lda ({z1}),y
@@ -1554,7 +1569,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_bxor__deref_pbuz2 < pbuz1_
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_minus__deref_pbuc1
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < vbuaa=vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:51.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:51.0
   stx $ff
   ldy $ff
   tax
@@ -1580,7 +1595,7 @@ CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_bxor_pbuz2_derefidx_
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_minus_pbuz2_derefidx_vbuxx
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_plus_pbuz2_derefidx_vbuyy
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_plus_pbuz2_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:34.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbum3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:34.0
   stx $ff
   ldy $ff
   tax
@@ -1600,7 +1615,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_bor_pbuz2_derefidx_vbuc1 <
   ora ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_bor_pbuc1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:30.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_bor_pbuc1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:30.0
   stx $ff
   ldy $ff
   tax
@@ -1797,7 +1812,22 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_plus_vbuz3 < pbuz1_derefid
   adc {z3}
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_band__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:50.0
+  ldy {z2}
+  tax
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_bor__deref_pbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor__deref_pbuz2 < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A X Y  cycles:30.0
   ldy {z2}
   tax
@@ -1807,7 +1837,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < pbuz1_d
   ora ({z3}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_bxor__deref_pbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < pbuz1_derefidx_vbuxx=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuc1_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X Y  cycles:26.5
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_bxor__deref_pbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < pbuz1_derefidx_vbuxx=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuc1_bxor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X Y  cycles:26.5
   ldy {z2}
   tax
   lda ({z1}),y
@@ -1842,7 +1872,7 @@ CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bxor_pbuz3_derefidx_
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bxor_pbuz3_derefidx_vbuz1
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_minus_pbuz3_derefidx_vbuz2
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_plus_pbuz3_derefidx_vbuz3
-synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:30.0
+synthesized pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:30.0
   ldy {z2}
   tax
   lda ({z1}),y
@@ -2639,7 +2669,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_plus_vbuaa < pbuz1_derefid
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_vbuyy < pbuz1_derefidx_vbuaa=vbuyy_band_pbuz2_derefidx_vbuz3 < vbuaa=vbuyy_band_pbuz1_derefidx_vbuz2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbuz2_band_vbuaa < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:22.5
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_vbuyy < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbum3_band_vbuyy < pbuz1_derefidx_vbuaa=vbuyy_band_pbuz2_derefidx_vbum3 < vbuaa=vbuyy_band_pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbum2_band_vbuyy < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:22.5
   sta $ff
   tya
   ldy {z3}
@@ -2783,7 +2813,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz4_derefidx_vbuz5
   and ({z4}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz4_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbum3_band_pbuz4_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuyy_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuc1_band_pbuz2_derefidx_vbuyy < vbuaa=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:28.0
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz4_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbum3_band_pbuz4_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuyy_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuc1_band_pbuz2_derefidx_vbuyy < vbuaa=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:28.0
   ldy {z3}
   sta $ff
   lda ({z2}),y
@@ -2911,7 +2941,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_plus_pbuz1_derefidx_vbuaa
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuc1_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:27.0
   tax
   lda ({z1}),y
   ldy #{c1}
@@ -2933,7 +2963,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_plus_pbuz2_derefidx_vbuaa
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:25.0
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:25.0
   sta $ff
   lda ({z2}),y
   ldy #{c1}
@@ -2988,7 +3018,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_plus_pbuc1_derefidx_vbuaa
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuyy_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:24.0
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuyy_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:24.0
   sta $ff
   lda {c1},y
   ldy #{c1}
@@ -3023,7 +3053,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_plus_pbuc2_derefidx_vbuaa
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuc2_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:24.0
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc1_band_pbuc2_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuyy_band_pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:24.0
   sta $ff
   lda {c2},y
   ldy #{c1}
@@ -3083,14 +3113,14 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_band_vbuaa < pbuz1_derefid
   and {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_vbuxx < vbuaa=pbuc1_derefidx_vbuaa_bor_vbuxx < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuxx < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:20.5
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_vbuxx < pbuz1_derefidx_vbuaa=vbuxx_bor_pbuc1_derefidx_vbuaa < vbuaa=vbuxx_bor_pbuc1_derefidx_vbuaa < vbuaa=vbuxx_bor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:20.5
   sta $ff
   tay
   txa
   ora {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_vbuyy < vbuaa=pbuc1_derefidx_vbuaa_bor_vbuyy < vbuaa=vbuyy_bor_pbuc1_derefidx_vbuaa < vbuaa=vbuyy_bor_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:20.5
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_vbuyy < pbuz1_derefidx_vbuaa=vbuyy_bor_pbuc1_derefidx_vbuaa < vbuaa=vbuyy_bor_pbuc1_derefidx_vbuaa < vbuaa=vbuyy_bor_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:20.5
   sta $ff
   tax
   tya
@@ -3153,7 +3183,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuaa <
   ora {c1},x
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:30.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:30.0
   stx $ff
   ldy $ff
   tax
@@ -4161,7 +4191,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuz2_plus_pbuz3_derefidx_vbuz4
   adc ({z3}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuz2_band_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbum2_band_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuz2_band_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbum2_band_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc2_band_pbuc1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   ldy {z2}
   sta $ff
   lda {c1},y
@@ -4500,7 +4530,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_band_pbuz1_derefidx_vbuz2
   and {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:28.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_vbuaa < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:28.0
   ldy #{c1}
   tax
   lda ({z1}),y
@@ -4509,7 +4539,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuc1 <
   ora {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc2_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:28.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc2_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_bor_vbuaa < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A X Y  cycles:28.0
   ldy #{c2}
   tax
   lda ({z1}),y
@@ -4644,14 +4674,14 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_band_pbuc1_derefidx_vbuc2
   and {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:21.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:21.0
   tax
   tay
   lda {c2},x
   ldx #{c1}
   ora {c1},x
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:25.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuyy_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:25.0
   sta $ff
   tay
   lda {c2},y
@@ -4659,7 +4689,7 @@ synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuaa <
   ora {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:19.0
+synthesized pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc2_derefidx_vbuxx_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:19.0
   tay
   lda {c2},x
   ldx #{c1}
diff --git a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuc1.log b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuc1.log
index e1bcea8ff..c2f712b52 100644
--- a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuc1.log
+++ b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuc1.log
@@ -261,7 +261,7 @@ synthesized pbuz1_derefidx_vbuc1=vbuxx_band_vbuc2 < pbuz1_derefidx_vbuc1=vbuc2_b
   txa
   and #{c2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuyy_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuyy < pbuz1_derefidx_vbuaa=vbuxx_bor_vbuyy < pbuz1_derefidx_vbuaa=vbuyy_bor_vbuxx < vbuaa=vbuyy_bor_vbuxx < vbuaa=vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_vbuyy - clobber:A Y  cycles:22.0
+synthesized pbuz1_derefidx_vbuc1=vbuyy_bor_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_bor_vbuxx < vbuaa=vbuyy_bor_vbuxx < vbuaa=vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_vbuyy - clobber:A Y  cycles:22.0
   lda #{c1}
   sta $ff
   txa
@@ -1174,7 +1174,7 @@ synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bor_pbuz1_derefidx_vbuyy < pbuz1_d
   ora {c2}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:26.5
+synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:26.5
   ldy {z2}
   lda ({z1}),y
   ldy #{c1}
@@ -1183,7 +1183,7 @@ synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuz2 < pbuz1_
   eor {c2}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:25.5
+synthesized pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:25.5
   ldy #{c2}
   lda ({z1}),y
   ldy #{c1}
@@ -1380,7 +1380,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_band_vbuxx < pbuz1_derefid
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_band_vbuz1
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_vbuaa < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:37.0
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_vbuaa < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:37.0
   tay
   lda ({z1}),y
   tax
@@ -1402,7 +1402,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_bor__deref_pbuc1 < pbuz1_d
   ora {c1}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:35.0
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuaa_bor_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:35.0
   tay
   lda ({z1}),y
   tax
@@ -1617,7 +1617,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_band_vbuaa < pbuz1_derefid
   and $ff
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuyy_bor_vbuaa < vbuaa=vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_vbuyy - clobber:A X Y  cycles:25.5
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuaa_bor_vbuyy < vbuaa=vbuaa_bor_vbuyy - clobber:A X Y  cycles:25.5
   lda ({z1}),y
   ldx #{c1}
   stx $ff
@@ -1633,7 +1633,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuz2 < pbuz1_derefidx
   ora {z2}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_vbuaa < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:27.0
   lda ({z1}),y
   ldy #{c1}
   sty $ff
@@ -1642,7 +1642,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuz1_
   eor ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:23.5
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:23.5
   lda ({z1}),y
   ldy #{c1}
   sty $ff
@@ -1975,7 +1975,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_band_vbuxx < pbuz1_derefid
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bor_vbuz1
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bor_vbuaa < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:37.0
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bor__deref_pbuz1 < pbuz1_derefidx_vbuc1=_deref_pbuz1_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bor_vbuaa < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:37.0
   ldy #0
   lda ({z1}),y
   ldy #{c2}
@@ -1997,7 +1997,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc1 < pbuz1_
   eor {c1}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc3 < pbuz1_derefidx_vbuc1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc3 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:25.5
+synthesized pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuc2_bxor__deref_pbuc3 < pbuz1_derefidx_vbuc1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc3_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc3 < pbuz1_derefidx_vbuc1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:25.5
   ldy #{c2}
   lda ({z1}),y
   ldy #{c1}
@@ -3159,7 +3159,7 @@ CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_band_pbuc2_derefidx_
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_band_pbuc2_derefidx_vbuyy
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_band_pbuc2_derefidx_vbuz2
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_bor_pbuc2_derefidx_vbuc2
-synthesized pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuc1_bor_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:26.5
+synthesized pbuz1_derefidx_vbuc1=pbuc1_derefidx_vbuyy_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuc1_bor_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:26.5
   lda {c1},y
   ldx #{c1}
   ldy #{c1}
@@ -4429,7 +4429,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuc2_derefidx_vbuc1_bor_vbuz2 < pbuz1_derefidx
   ora {c2},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=pbuc2_derefidx_vbuc1_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuc1 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=pbuc1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:26.0
+synthesized pbuz1_derefidx_vbuc1=pbuc2_derefidx_vbuc1_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_pbuc2_derefidx_vbuc1 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=pbuc1_derefidx_vbuyy_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_vbuaa < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:26.0
   ldy #{c1}
   lda {c2},y
   sty $ff
@@ -5299,7 +5299,7 @@ synthesized pbuz1_derefidx_vbuc1=pbuc2_derefidx_vbuc3_band_vbuc3 < pbuz1_derefid
   and {c2},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:22.0
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:22.0
   ldx #{c1}
   ldy #{c1}
   sty $ff
@@ -5308,7 +5308,7 @@ synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bo
   ora $ff
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuyy_bor_vbuaa < vbuaa=vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_vbuyy - clobber:A X Y  cycles:22.0
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_vbuyy < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuyy_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuyy < pbuz1_derefidx_vbuxx=vbuaa_bor_vbuyy < vbuaa=vbuaa_bor_vbuyy - clobber:A X Y  cycles:22.0
   lda #{c1}
   ldx #{c1}
   stx $ff
@@ -5331,7 +5331,7 @@ synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor_vbuz2 < pbuz1_derefidx_vbuc1=vbuc1_b
   eor {z2}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:23.5
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuz2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuz2 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bxor_vbuaa < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:23.5
   lda #{c1}
   ldy #{c1}
   sty $ff
@@ -5340,14 +5340,14 @@ synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuz2 < pbuz1_derefidx_vbuc1=
   eor ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bxor__deref_pbuc2 < pbuz1_derefidx_vbuaa=vbuxx_bxor__deref_pbuc2 < vbuaa=vbuxx_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuxx < vbuaa=_deref_pbuc1_bxor_vbuxx < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X Y  cycles:18.0
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bxor__deref_pbuc2 < pbuz1_derefidx_vbuaa=vbuxx_bxor__deref_pbuc2 < pbuz1_derefidx_vbuaa=_deref_pbuc2_bxor_vbuxx < vbuaa=_deref_pbuc2_bxor_vbuxx < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A X Y  cycles:18.0
   ldx #{c1}
   lda #{c1}
   tay
   txa
   eor {c2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < vbuaa=vbuaa_bxor__deref_pbuc2 < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:20.0
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bxor__deref_pbuc2 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuc1 < pbuz1_derefidx_vbuc1=_deref_pbuc2_bxor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bxor__deref_pbuc2 < pbuz1_derefidx_vbuyy=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc2_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:20.0
   lda #{c1}
   ldy #{c1}
   sty $ff
@@ -5409,7 +5409,7 @@ synthesized pbuz1_derefidx_vbuc1=vbuc1_band_pbuz2_derefidx_vbuc2 < pbuz1_derefid
   and ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuc1=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:26.5
+synthesized pbuz1_derefidx_vbuc1=vbuc1_bor_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuc1=vbuc1_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc1 < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuxx < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:26.5
   lda {c1},x
   ldx #{c1}
   ldy #{c1}
@@ -5523,7 +5523,7 @@ synthesized pbuz1_derefidx_vbuc1=vbuc2_bor__deref_pbuc3 < pbuz1_derefidx_vbuc1=_
   lda #{c2}
   ora {c3}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuc2_bor_vbuaa < pbuz1_derefidx_vbuyy=vbuc2_bor_vbuaa < vbuaa=vbuc2_bor_vbuaa < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:25.5
+synthesized pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuc1=vbuc2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuc1=vbuc2_bor_vbuaa < pbuz1_derefidx_vbuc1=vbuaa_bor_vbuc2 < pbuz1_derefidx_vbuyy=vbuaa_bor_vbuc2 < pbuz1_derefidx_vbuyy=vbuc2_bor_vbuaa < vbuaa=vbuc2_bor_vbuaa < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:25.5
   txa
   tay
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuxx.log b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuxx.log
index b99127b64..221d78be5 100644
--- a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuxx.log
+++ b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuxx.log
@@ -907,7 +907,21 @@ synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_plus_pbuz1_derefidx_vbuyy < pbuz1_
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuxx=_deref_pbuz2_band_pbuz1_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:48.0
+  ldy {z2}
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbum3 < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:28.0
   ldy {z3}
   lda ({z1}),y
@@ -1018,7 +1032,7 @@ synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_band_pbuz3_derefidx_vbuz4 < pbuz1_
   and ({z3}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=_deref_pbuz1_band_pbuz2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuxx=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   stx $ff
   ldy #0
   lda ({z2}),y
@@ -1731,7 +1745,21 @@ synthesized pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuz2_plus_vbuz3 < pbuz1_derefid
   adc {z3}
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuz2_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbum2_band__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:48.0
+  ldy {z2}
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbum2_bor__deref_pbuz3 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:28.0
   ldy {z2}
   lda ({z1}),y
@@ -2530,7 +2558,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_plus_vbuaa < pbuz1_derefid
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuyy < pbuz1_derefidx_vbuxx=vbuyy_band_pbuz2_derefidx_vbuz3 < vbuaa=vbuyy_band_pbuz1_derefidx_vbuz2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbuz2_band_vbuaa < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:22.5
+synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbum3_band_vbuyy < pbuz1_derefidx_vbuxx=vbuyy_band_pbuz2_derefidx_vbum3 < vbuaa=vbuyy_band_pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbum2_band_vbuyy < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:22.5
   stx $ff
   tya
   ldy {z3}
@@ -3263,7 +3291,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_minus_pbuz1_derefidx_vbuz2
   sbc $ff
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:26.0
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:26.0
   ldy #{c1}
   lda ({z1}),y
   stx $ff
@@ -3271,7 +3299,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc1
   adc {c1},x
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc2_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:26.0
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc2_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuc1_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:26.0
   ldy #{c2}
   lda ({z1}),y
   stx $ff
@@ -3405,7 +3433,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_minus_pbuc2_derefidx_vbuc3
   sbc {c2},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuc1 < pbuz1_derefidx_vbuxx=vbuc1_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:20.5
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuc1 < pbuz1_derefidx_vbuxx=vbuc1_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:20.5
   lda #{c1}
   stx $ff
   clc
@@ -3566,7 +3594,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuaa
   adc {c2},x
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:23.0
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:23.0
   lda {c1},y
   stx $ff
   clc
@@ -4249,7 +4277,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_minus_pbuz2_derefidx_vbuyy
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_plus_pbuz2_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc1_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbum3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   ldy #{c1}
   lda {c1},y
   ldy {z3}
@@ -4821,7 +4849,7 @@ synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc2_minus_pbuc3_derefidx_vbuaa
   sbc {c3},x
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc2_plus_pbuc3_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc3_derefidx_vbuxx_plus_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbuxx=pbuc3_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc3_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:25.0
+synthesized pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuc2_plus_pbuc3_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc3_derefidx_vbuxx_plus_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbuxx=pbuc3_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc3_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuyy_plus_pbuc2_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuc2_derefidx_vbuxx_plus_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuxx_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:25.0
   ldy #{c2}
   lda {c1},y
   stx $ff
diff --git a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuyy.log b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuyy.log
index 81aa6015d..cf4a726a4 100644
--- a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuyy.log
+++ b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuyy.log
@@ -1030,7 +1030,23 @@ synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_plus_pbuz1_derefidx_vbuyy < pbuz1_
   adc ({z2}),y
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=_deref_pbuz2_band_pbuz1_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:52.0
+  tya
+  ldy {z2}
+  tax
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbum3 < pbuz1_derefidx_vbuaa=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor__deref_pbuz2 < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A X Y  cycles:32.0
   tya
   ldy {z3}
@@ -1154,7 +1170,7 @@ synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_band_pbuz3_derefidx_vbuz4 < pbuz1_
   and ({z3}),y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuyy=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=_deref_pbuz1_band_pbuz2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
+synthesized pbuz1_derefidx_vbuyy=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuyy=pbuz3_derefidx_vbuc1_band__deref_pbuz2 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:27.0
   sty $ff
   
   ldy #0
@@ -1232,7 +1248,7 @@ synthesized pbuz1_derefidx_vbuyy=_deref_pbuc1_bxor_vbuaa < pbuz1_derefidx_vbuyy=
   eor {c1}
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuyy=_deref_pbuc1_bxor_vbuxx < pbuz1_derefidx_vbuaa=_deref_pbuc1_bxor_vbuxx < pbuz1_derefidx_vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:16.0
+synthesized pbuz1_derefidx_vbuyy=_deref_pbuc1_bxor_vbuxx < pbuz1_derefidx_vbuyy=vbuxx_bxor__deref_pbuc1 < pbuz1_derefidx_vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:16.0
   tya
   tay
   txa
@@ -1696,7 +1712,7 @@ synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuxx_plus_pbuz2_derefidx_vbuyy
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuxx_plus_pbuz2_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:36.0
+synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbum3_band_vbuaa < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:36.0
   tya
   stx $ff
   ldy $ff
@@ -1812,7 +1828,7 @@ synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bor_pbuz1_derefidx_vbuaa <
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bxor_pbuz1_derefidx_vbuxx
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_bxor_pbuz1_derefidx_vbuyy
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_minus_pbuz1_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:50.0
+synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuxx < pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:50.0
   tya
   ldy {z2}
   tax
@@ -1830,7 +1846,7 @@ synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuz2
   adc $ff
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc1_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:49.0
+synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuc1_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuxx < pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:49.0
   tya
   ldy #{c1}
   tax
@@ -1952,7 +1968,23 @@ synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_plus_vbuz3 < pbuz1_derefid
   adc {z3}
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_band__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:52.0
+  tya
+  ldy {z2}
+  tax
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_bor__deref_pbuz3 < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbuz2_bor_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_bor__deref_pbuz2 < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A X Y  cycles:32.0
   tya
   ldy {z2}
@@ -1974,7 +2006,7 @@ synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < pbuz1_
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_bxor_pbuz1_derefidx_vbuaa
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_minus_pbuz1_derefidx_vbuxx
-synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=vbuxx_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:50.0
+synthesized pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuz2_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbum2_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuaa < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuxx_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuyy < pbuz1_derefidx_vbuaa=pbuz1_derefidx_vbuaa_plus_vbuxx < pbuz1_derefidx_vbuyy=pbuz1_derefidx_vbuyy_plus_vbuxx < pbuz1_derefidx_vbuyy=vbuxx_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuyy=vbuxx_plus_vbuaa < pbuz1_derefidx_vbuyy=vbuaa_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:50.0
   tya
   ldy {z2}
   tax
@@ -4792,7 +4824,7 @@ synthesized pbuz1_derefidx_vbuyy=pbuc1_derefidx_vbuc1_band__deref_pbuz1 < pbuz1_
   and {c1},y
   ldy $ff
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuyy=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:26.0
+synthesized pbuz1_derefidx_vbuyy=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < pbuz1_derefidx_vbuyy=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:26.0
   sty $ff
   
   ldy #0
diff --git a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuz2.log b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuz2.log
index 0bc4910cd..b7c4973f6 100644
--- a/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuz2.log
+++ b/src/test/ref/fragments-assignment-binary-pbuz1_derefidx_vbuz2.log
@@ -654,26 +654,206 @@ synthesized pbuz1_derefidx_vbuz2=_deref_pbuz1_minus_pbuc1_derefidx_vbuc2 < pbuz1
   sbc {c1},y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_vbuaa
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_vbuyy
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_vbuz2
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_plus__deref_pbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_band__deref_pbuc1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuz1_derefidx_vbuxx
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_vbuaa < pbuz1_derefidx_vbum2=_deref_pbum2_minus_vbuaa < pbuz1_derefidx_vbuxx=_deref_pbum2_minus_vbuaa < vbuaa=_deref_pbum1_minus_vbuaa < vbuaa=_deref_pbum1_minus_vbuxx < vbuaa=vbuaa_minus_vbuxx - clobber:A X Y  cycles:44.5
+  ldx {z2}
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  sec
+  sbc $ff
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_vbuyy < pbuz1_derefidx_vbum2=_deref_pbum2_plus_vbuyy < pbuz1_derefidx_vbuaa=_deref_pbum2_plus_vbuyy < vbuaa=_deref_pbum1_plus_vbuyy < vbuaa=_deref_pbum1_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:46.5
+  lda {z2}
+  sta $ff
+  tya
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  clc
+  adc $ff
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_vbuz2 < pbuz1_derefidx_vbum2=_deref_pbum2_plus_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_plus_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_plus_vbuxx < pbuz1_derefidx_vbuaa=vbuxx_plus__deref_pbum2 < vbuaa=vbuxx_plus__deref_pbum1 < vbuaa=_deref_pbum1_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:45.5
+  lda {z2}
+  ldx {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  clc
+  adc $ff
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_plus__deref_pbuz1 < pbuz1_derefidx_vbum2=_deref_pbum2_plus__deref_pbuz1 < pbuz1_derefidx_vbuxx=_deref_pbum2_plus__deref_pbuz1 < pbuz1_derefidx_vbuxx=_deref_pbuz1_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=vbuaa_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:52.0
+  ldx {z2}
+  ldy #0
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  clc
+  adc $ff
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_band__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbum2_band__deref_pbuc1 < pbuz1_derefidx_vbuaa=_deref_pbum2_band__deref_pbuc1 < pbuz1_derefidx_vbuaa=_deref_pbuc1_band__deref_pbum2 < vbuaa=_deref_pbuc1_band__deref_pbum1 < vbuaa=_deref_pbuc1_band_vbuaa < vbuaa=vbuaa_band__deref_pbuc1 - clobber:A Y  cycles:38.5
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  and {c1}
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuz1_derefidx_vbuxx < pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbum2=_deref_pbum2_band_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbuxx=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:52.0
+  txa
+  ldx {z2}
+  tay
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuz1_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=_deref_pbum2_bor_pbuz1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=_deref_pbum2_bor_pbuz1_derefidx_vbum3 < pbuz1_derefidx_vbuxx=_deref_pbum2_bor_pbuz1_derefidx_vbum3 < pbuz1_derefidx_vbuxx=_deref_pbum2_bor_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_bor_vbuaa < vbuaa=_deref_pbum1_bor_vbuaa < vbuaa=_deref_pbum1_bor_vbuxx < vbuaa=vbuaa_bor_vbuxx - clobber:A X Y  cycles:51.0
+  ldx {z2}
+  ldy {z3}
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ora $ff
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuz2_derefidx_vbuaa
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bxor_pbuz2_derefidx_vbuyy
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bxor_pbuz2_derefidx_vbuz2
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_pbuz2_derefidx_vbuc1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_pbuz3_derefidx_vbuxx
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_pbuz3_derefidx_vbuxx < pbuz1_derefidx_vbum2=_deref_pbum2_minus_pbuz3_derefidx_vbuxx < pbuz1_derefidx_vbuaa=_deref_pbum2_minus_pbuz3_derefidx_vbuxx < vbuaa=_deref_pbum1_minus_pbuz2_derefidx_vbuxx < vbuaa=vbuaa_minus_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_minus_pbuz1_derefidx_vbuyy < vbuaa=vbuxx_minus_pbuz1_derefidx_vbuyy < vbuaa=vbuxx_minus_vbuaa - clobber:A X Y  cycles:58.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  tax
+  lda ({z3}),y
+  sta $ff
+  txa
+  sec
+  sbc $ff
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_minus_pbuz3_derefidx_vbuz1
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_pbuz3_derefidx_vbuz3
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_pbuz3_derefidx_vbuc1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuc1_derefidx_vbuyy
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuc1_derefidx_vbuz2
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_vbuc1
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_plus_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbum2=_deref_pbum2_plus_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=_deref_pbum2_plus_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuc1_plus__deref_pbum2 < vbuaa=pbuz2_derefidx_vbuc1_plus__deref_pbum1 < vbuaa=pbuz1_derefidx_vbuc1_plus_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:44.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy #{c1}
+  clc
+  adc ({z3}),y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbum2_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuyy_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuaa_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuxx_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuxx_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:43.0
+  lda {z2}
+  sta $ff
+  tya
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  and {c1},x
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_band_pbuc1_derefidx_vbuz2 < pbuz1_derefidx_vbum2=_deref_pbum2_band_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_pbuc1_derefidx_vbuxx < vbuaa=_deref_pbum1_band_pbuc1_derefidx_vbuxx < vbuaa=pbuc1_derefidx_vbuxx_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuxx_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:42.0
+  lda {z2}
+  ldx {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  and {c1},x
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbum2=_deref_pbum2_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=_deref_pbum2_bor_pbuc1_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:41.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy #{c1}
+  ora {c1},y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2_bor_vbuc1 < pbuz1_derefidx_vbum2=_deref_pbum2_bor_vbuc1 < pbuz1_derefidx_vbuaa=_deref_pbum2_bor_vbuc1 < pbuz1_derefidx_vbuaa=vbuc1_bor__deref_pbum2 < vbuaa=vbuc1_bor__deref_pbum1 < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:36.5
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ora #{c1}
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_vbuxx < pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_vbuaa < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_vbuaa < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:18.5
   txa
   ldy #0
@@ -802,6 +982,20 @@ synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_plus_pbuz4_derefidx_vbuz2 < pbuz1_
   adc ({z4}),y
   ldy {z2}
   sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_plus_pbuz4_derefidx_vbuz2 < pbuz1_derefidx_vbum2=_deref_pbuz3_plus_pbuz4_derefidx_vbum2 < pbuz1_derefidx_vbum2=_deref_pbum3_plus_pbuz4_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum3_plus_pbuz4_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_plus_pbuz4_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbuz4_derefidx_vbum3_plus__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuz4_derefidx_vbum2_plus__deref_pbum3 < vbuaa=pbuz3_derefidx_vbum1_plus__deref_pbum2 < vbuaa=pbuz2_derefidx_vbum1_plus_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:45.0
+  lda {z2}
+  sta $ff
+  ldy {z3}
+  sty $fe
+  ldy {z3}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z2}
+  clc
+  adc ({z4}),y
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz3_plus_pbuz4_derefidx_vbuz4
 synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_band_pbuc1_derefidx_vbuaa < pbuz1_derefidx_vbuz2=_deref_pbuz3_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbuz3_band_pbuc1_derefidx_vbuyy < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_band__deref_pbuz3 < pbuz1_derefidx_vbum2=vbuaa_band__deref_pbuz3 < pbuz1_derefidx_vbum2=_deref_pbuz3_band_vbuaa < vbuaa=_deref_pbuz1_band_vbuaa < vbuaa=vbuaa_band__deref_pbuz1 - clobber:A Y  cycles:23.0
   tay
@@ -823,14 +1017,14 @@ synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_pbuc1_derefidx_vbuz2 < pbuz1_d
   ora ({z3}),y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor__deref_pbuz3 < vbuaa=pbuc1_derefidx_vbuz2_bor__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.0
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor__deref_pbuz3 < vbuaa=pbuc1_derefidx_vbuz2_bor__deref_pbuz1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuz2 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbum2 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.0
   ldy #0
   lda ({z3}),y
   ldy {z4}
   ora {c1},y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc2_bor__deref_pbuz3 < vbuaa=pbuc1_derefidx_vbuc2_bor__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc2_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc2_bor__deref_pbuz3 < vbuaa=pbuc1_derefidx_vbuc2_bor__deref_pbuz1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
   ldy #0
   lda ({z3}),y
   ldy #{c2}
@@ -1003,7 +1197,23 @@ synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuaa_plus_vbuz3 < pbuz1_derefid
   adc {z3}
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuaa_plus__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuaa_plus__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuaa_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuaa_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:52.0
+  ldx {z2}
+  tay
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  clc
+  adc $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuaa_plus__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuaa_plus__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_plus_pbuz1_derefidx_vbuaa < pbuz1_derefidx_vbum2=_deref_pbuc1_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbuc1_plus_vbuaa < pbuz1_derefidx_vbum2=vbuaa_plus__deref_pbuc1 < vbuaa=vbuaa_plus__deref_pbuc1 - clobber:A Y  cycles:22.5
   tay
   lda ({z1}),y
@@ -1179,7 +1389,21 @@ synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuyy_plus_vbuz2 < pbuz1_derefid
   adc {z2}
   ldy $ff
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuyy_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuyy_band__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbum2=_deref_pbum2_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbum2_band_vbuaa < pbuz1_derefidx_vbum2=vbuaa_band__deref_pbum2 < pbuz1_derefidx_vbuxx=vbuaa_band__deref_pbum2 < vbuaa=vbuaa_band__deref_pbum1 < vbuaa=vbuxx_band__deref_pbum1 < vbuaa=_deref_pbum1_band_vbuxx < vbuaa=vbuaa_band_vbuxx - clobber:A X Y  cycles:48.0
+  lda ({z1}),y
+  ldx {z2}
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  and $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuyy_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuyy_band__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbuc1_band_vbuaa < pbuz1_derefidx_vbum2=vbuaa_band__deref_pbuc1 < vbuaa=vbuaa_band__deref_pbuc1 - clobber:A Y  cycles:18.5
   lda ({z1}),y
   and {c1}
@@ -1361,7 +1585,23 @@ synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz3_plus_vbuz4 < pbuz1_derefid
   adc {z4}
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz3_plus__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz3_plus__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuz3_plus__deref_pbum2 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbum3_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbum3_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=pbuz1_derefidx_vbuyy_plus__deref_pbum2 < pbuz1_derefidx_vbuxx=_deref_pbum2_plus_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbuxx=_deref_pbum2_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuaa < vbuaa=_deref_pbum1_plus_vbuxx < vbuaa=vbuaa_plus_vbuxx - clobber:A X Y  cycles:53.0
+  ldx {z2}
+  ldy {z3}
+  lda ({z1}),y
+  stx $ff
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  clc
+  adc $ff
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuz3_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuz3_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbum3_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz1_derefidx_vbuyy_band__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_band_pbuz1_derefidx_vbuyy < pbuz1_derefidx_vbum2=_deref_pbuc1_band_vbuaa < pbuz1_derefidx_vbum2=vbuaa_band__deref_pbuc1 < vbuaa=vbuaa_band__deref_pbuc1 - clobber:A Y  cycles:21.5
   ldy {z3}
   lda ({z1}),y
@@ -1880,7 +2120,7 @@ synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuxx_band_pbuc1_derefidx_vbuz2
   and ({z3}),y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuxx_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuaa_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:26.0
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuxx_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuaa_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbum1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:26.0
   txa
   tay
   lda ({z3}),y
@@ -1966,7 +2206,7 @@ synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_band_pbuc1_derefidx_vbuxx
   ldy {z2}
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz1
-synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz3_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:22.0
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz3_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbum1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:22.0
   lda ({z3}),y
   ldy {z3}
   ora {c1},y
@@ -2161,7 +2401,19 @@ synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4_bor_vbuz5 < pbuz1_derefidx
   ora ({z3}),y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4_bor__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4_bor__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuz4_bor__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuz3_derefidx_vbuz4_bor__deref_pbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_bor_pbuz3_derefidx_vbuz4 < vbuaa=_deref_pbum1_bor_pbuz2_derefidx_vbuz3 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuz2 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbum2 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:43.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z4}
+  ora ({z3}),y
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4_bxor__deref_pbuz4
 synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuz4_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_bxor_pbuz3_derefidx_vbuz4 < vbuaa=_deref_pbuc1_bxor_pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < vbuaa=pbuz1_derefidx_vbum2_bxor__deref_pbuc1 < vbuaa=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < vbuaa=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:21.5
   ldy {z4}
@@ -2382,14 +2634,14 @@ synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuc1_band_pbuc2_derefidx_vbuz2
   and ({z3}),y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuz4_bor_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc2_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.0
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuz4_bor_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc2_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy_bor_pbuc1_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz4_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz2_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuz1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbum1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:24.0
   ldy #{c1}
   lda ({z3}),y
   ldy {z4}
   ora {c2},y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuc2_bor_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuc2_bor_pbuz3_derefidx_vbuyy < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc1_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuc1_bor_pbuc2_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuc2_bor_pbuz3_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbuc2_derefidx_vbuc2_bor_pbuz3_derefidx_vbuyy < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc1_bor_pbuz3_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
   ldy #{c1}
   lda ({z3}),y
   ldy #{c2}
@@ -2602,7 +2854,19 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuxx_plus_vbuz3 < pbuz1_derefid
   adc {z3}
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuxx_plus__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuxx_plus__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuxx_plus__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuxx_plus__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuxx_plus__deref_pbum1 < vbuaa=_deref_pbum1_plus_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuxx - clobber:A Y  cycles:41.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  clc
+  adc {c1},x
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuxx_band__deref_pbuc2 < pbuz1_derefidx_vbuz2=_deref_pbuc2_band_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuz2=_deref_pbuc1_band_vbuaa < pbuz1_derefidx_vbum2=_deref_pbuc1_band_vbuaa < pbuz1_derefidx_vbum2=vbuaa_band__deref_pbuc1 < vbuaa=vbuaa_band__deref_pbuc1 - clobber:A Y  cycles:17.5
   lda {c1},x
   and {c2}
@@ -2712,7 +2976,20 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuyy_plus_vbuz2 < pbuz1_derefid
   adc {c1},y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuyy_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuyy_band__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_band__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuyy_band__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuyy_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuaa_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuxx_band__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuxx_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:43.0
+  lda {z2}
+  sta $ff
+  tya
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  and {c1},x
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuyy_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_band__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_band_vbuaa < pbuz1_derefidx_vbum2=vbuaa_band_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.5
   lda {c1}
   and {c1},y
@@ -2872,7 +3149,19 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz2_bor_vbuz3 < pbuz1_derefidx
   ora {c1},y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz2_bor__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz2_bor__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbum2_bor__deref_pbum2 < pbuz1_derefidx_vbum2=_deref_pbum2_bor_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_bor_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_bor_pbuc1_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuxx_bor__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuxx_bor__deref_pbum1 < vbuaa=_deref_pbum1_bor_pbuc1_derefidx_vbuxx < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuxx - clobber:A X Y  cycles:42.0
+  lda {z2}
+  ldx {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ora {c1},x
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz2_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbum2_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_bxor_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbum2=vbuaa_bxor_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbum2=vbuaa_bxor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bxor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:20.5
   lda {c1}
   ldy {z2}
@@ -3037,7 +3326,19 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz3_bxor_vbuz4 < pbuz1_derefid
   eor {c1},y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz3_bxor__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz3_bxor__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz3_bxor__deref_pbum2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbum3_bxor__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbum3_bxor__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbum2_bxor__deref_pbum3 < pbuz1_derefidx_vbuaa=_deref_pbum3_bxor_pbuc1_derefidx_vbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_bxor_pbuc1_derefidx_vbum3 < vbuaa=_deref_pbum1_bxor_pbuc1_derefidx_vbum2 < vbuaa=vbuaa_bxor_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_bxor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:42.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z3}
+  eor {c1},y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuz3_minus__deref_pbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuz3_minus__deref_pbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbum3_minus__deref_pbuz4 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_minus__deref_pbuz3 < pbuz1_derefidx_vbum2=vbuaa_minus__deref_pbuz3 < vbuaa=vbuaa_minus__deref_pbuz1 - clobber:A Y  cycles:26.0
   ldy {z3}
   lda {c1},y
@@ -3255,7 +3556,7 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc1_band__deref_pbuz1 < pbuz1_
   and {c1},y
   ldy {z2}
   sta ({z1}),y
-synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc1_bor__deref_pbuz3 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc1_bor__deref_pbuz3 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc1_bor__deref_pbuz3 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc1_bor__deref_pbuz3 < pbuz1_derefidx_vbum2=_deref_pbuz3_bor_pbuc1_derefidx_vbuc1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:23.0
   ldy #0
   lda ({z3}),y
   ldy #{c1}
@@ -3401,7 +3702,19 @@ synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc2_bor_vbuz3 < pbuz1_derefidx
   ora {c1},y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc2_bor__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc2_bor__deref_pbuz2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc2_bor__deref_pbum2 < pbuz1_derefidx_vbuaa=pbuc1_derefidx_vbuc2_bor__deref_pbum2 < vbuaa=pbuc1_derefidx_vbuc2_bor__deref_pbum1 < vbuaa=pbuc1_derefidx_vbuc2_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:41.0
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy #{c2}
+  ora {c1},y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuc1_derefidx_vbuc2_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc2_bxor__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_bxor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=vbuaa_bxor_pbuc1_derefidx_vbuc2 < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuc2_bxor_vbuaa < pbuz1_derefidx_vbum2=pbuc1_derefidx_vbuyy_bxor_vbuaa < pbuz1_derefidx_vbum2=vbuaa_bxor_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_bxor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:19.5
   lda {c1}
   ldy #{c2}
@@ -3602,7 +3915,18 @@ synthesized pbuz1_derefidx_vbuz2=vbuc1_band_vbuz3 < pbuz1_derefidx_vbum2=vbuc1_b
   and {z3}
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=vbuc1_band__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=vbuc1_band__deref_pbuz2 < pbuz1_derefidx_vbum2=vbuc1_band__deref_pbum2 < pbuz1_derefidx_vbuaa=vbuc1_band__deref_pbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2_band_vbuc1 < vbuaa=_deref_pbum1_band_vbuc1 < vbuaa=vbuaa_band_vbuc1 - clobber:A Y  cycles:36.5
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  and #{c1}
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=vbuc1_bor__deref_pbuc1 < pbuz1_derefidx_vbum2=vbuc1_bor__deref_pbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_bor_vbuc1 < pbuz1_derefidx_vbum2=_deref_pbuc1_bor_vbuaa < pbuz1_derefidx_vbum2=vbuaa_bor__deref_pbuc1 < vbuaa=vbuaa_bor__deref_pbuc1 - clobber:A Y  cycles:15.0
   lda #{c1}
   ora {c1}
diff --git a/src/test/ref/fragments-assignment-binary-vbuaa.log b/src/test/ref/fragments-assignment-binary-vbuaa.log
index 0406e0838..cffe745e8 100644
--- a/src/test/ref/fragments-assignment-binary-vbuaa.log
+++ b/src/test/ref/fragments-assignment-binary-vbuaa.log
@@ -1847,7 +1847,18 @@ synthesized vbuaa=pbuz1_derefidx_vbuz2_plus__deref_pbuz1 < vbuaa=pbuz1_derefidx_
   clc
   adc ({z1}),y
 CANNOT SYNTHESIZE vbuaa=pbuz1_derefidx_vbuz2_bxor__deref_pbuz2
-CANNOT SYNTHESIZE vbuaa=pbuz1_derefidx_vbuz2_plus__deref_pbuz2
+synthesized vbuaa=pbuz1_derefidx_vbuz2_plus__deref_pbuz2 < vbuaa=pbuz1_derefidx_vbum2_plus__deref_pbum2 < vbuaa=pbuz1_derefidx_vbuxx_plus__deref_pbum2 < vbuaa=_deref_pbum2_plus_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuxx < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:36.0
+  ldx {z2}
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  clc
+  adc ({z1}),y
 synthesized vbuaa=pbuz1_derefidx_vbuz2_bxor__deref_pbuz3 < vbuaa=pbuz1_derefidx_vbum2_bxor__deref_pbuz3 < vbuaa=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < vbuaa=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:16.0
   ldy {z2}
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-binary-vbuxx.log b/src/test/ref/fragments-assignment-binary-vbuxx.log
index 9168f47e8..9381cbaf0 100644
--- a/src/test/ref/fragments-assignment-binary-vbuxx.log
+++ b/src/test/ref/fragments-assignment-binary-vbuxx.log
@@ -1954,7 +1954,19 @@ synthesized vbuxx=pbuz1_derefidx_vbuz2_plus__deref_pbuz1 < vbuxx=pbuz1_derefidx_
   adc ({z1}),y
   tax
 CANNOT SYNTHESIZE vbuxx=pbuz1_derefidx_vbuz2_bxor__deref_pbuz2
-CANNOT SYNTHESIZE vbuxx=pbuz1_derefidx_vbuz2_plus__deref_pbuz2
+synthesized vbuxx=pbuz1_derefidx_vbuz2_plus__deref_pbuz2 < vbuxx=pbuz1_derefidx_vbum2_plus__deref_pbum2 < vbuxx=pbuz1_derefidx_vbuxx_plus__deref_pbum2 < vbuxx=_deref_pbum2_plus_pbuz1_derefidx_vbuxx < vbuaa=_deref_pbum2_plus_pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuxx_plus__deref_pbum2 < vbuaa=pbuz1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:38.0
+  ldx {z2}
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  clc
+  adc ({z1}),y
+  tax
 synthesized vbuxx=pbuz1_derefidx_vbuz2_bxor__deref_pbuz3 < vbuxx=pbuz1_derefidx_vbum2_bxor__deref_pbuz3 < vbuxx=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < vbuxx=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A X Y  cycles:18.0
   ldy {z2}
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-binary-vbuyy.log b/src/test/ref/fragments-assignment-binary-vbuyy.log
index c77ef2b1d..ef0c40bd5 100644
--- a/src/test/ref/fragments-assignment-binary-vbuyy.log
+++ b/src/test/ref/fragments-assignment-binary-vbuyy.log
@@ -1962,7 +1962,19 @@ synthesized vbuyy=pbuz1_derefidx_vbuz2_plus__deref_pbuz1 < vbuyy=pbuz1_derefidx_
   adc ({z1}),y
   tay
 CANNOT SYNTHESIZE vbuyy=pbuz1_derefidx_vbuz2_bxor__deref_pbuz2
-CANNOT SYNTHESIZE vbuyy=pbuz1_derefidx_vbuz2_plus__deref_pbuz2
+synthesized vbuyy=pbuz1_derefidx_vbuz2_plus__deref_pbuz2 < vbuyy=pbuz1_derefidx_vbum2_plus__deref_pbum2 < vbuyy=pbuz1_derefidx_vbuxx_plus__deref_pbum2 < vbuyy=_deref_pbum2_plus_pbuz1_derefidx_vbuxx < vbuaa=_deref_pbum2_plus_pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuxx_plus__deref_pbum2 < vbuaa=pbuz1_derefidx_vbuxx_plus_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:38.0
+  ldx {z2}
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  stx $ff
+  ldy $ff
+  clc
+  adc ({z1}),y
+  tay
 synthesized vbuyy=pbuz1_derefidx_vbuz2_bxor__deref_pbuz3 < vbuyy=pbuz1_derefidx_vbum2_bxor__deref_pbuz3 < vbuyy=pbuz1_derefidx_vbuyy_bxor__deref_pbuz2 < vbuyy=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz2_bxor_pbuz1_derefidx_vbuyy < vbuaa=_deref_pbuz1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuz1 - clobber:A Y  cycles:18.0
   ldy {z2}
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-binary-vbuz1.log b/src/test/ref/fragments-assignment-binary-vbuz1.log
index ff460e931..2a075f0d6 100644
--- a/src/test/ref/fragments-assignment-binary-vbuz1.log
+++ b/src/test/ref/fragments-assignment-binary-vbuz1.log
@@ -140,7 +140,7 @@ CANNOT SYNTHESIZE vbuz1=vbuxx_bxor_vbuaa
 synthesized vbuz1=vbuxx_minus_vbuxx < vbum1=vbuxx_minus_vbuxx < vbuaa=vbuxx_minus_vbuxx - clobber:A   cycles:5.0
   lda #0
   sta {z1}
-synthesized vbuz1=vbuxx_plus_vbuyy < vbuz1=vbuyy_plus_vbuxx < vbum1=vbuyy_plus_vbuxx < vbuaa=vbuyy_plus_vbuxx < vbuaa=vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_vbuyy - clobber:A   cycles:13.0
+synthesized vbuz1=vbuxx_plus_vbuyy < vbuz1=vbuaa_plus_vbuyy < vbum1=vbuaa_plus_vbuyy < vbuaa=vbuaa_plus_vbuyy - clobber:A   cycles:13.0
   txa
   sty $ff
   clc
@@ -871,7 +871,7 @@ synthesized vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuz3 < vbuz1=_deref_pbuz1_bor
   ldy {z3}
   ora ({z2}),y
   sta {z1}
-synthesized vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
+synthesized vbuz1=_deref_pbuz1_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < vbum1=vbuaa_bor_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
   ldy #0
   lda ({z1}),y
   ldy #{c1}
@@ -910,13 +910,13 @@ synthesized vbuz1=_deref_pbuz1_band_pbuc1_derefidx_vbuc1 < vbuz1=pbuc1_derefidx_
   ldy #{c1}
   and {c1},y
   sta {z1}
-synthesized vbuz1=_deref_pbuz1_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuc1_derefidx_vbuc2_band__deref_pbuz1 < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
+synthesized vbuz1=_deref_pbuz1_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuc1_derefidx_vbuc2_band__deref_pbuz1 < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=vbuaa_band_pbuc1_derefidx_vbuc2 < vbum1=vbuaa_band_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
   ldy #0
   lda ({z1}),y
   ldy #{c2}
   and {c1},y
   sta {z1}
-synthesized vbuz1=_deref_pbuz1_bor_vbuc1 < vbuz1=vbuc1_bor__deref_pbuz1 < vbuz1=vbuc1_bor_vbuaa < vbum1=vbuc1_bor_vbuaa < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:12.5
+synthesized vbuz1=_deref_pbuz1_bor_vbuc1 < vbuz1=vbuc1_bor__deref_pbuz1 < vbuz1=vbuc1_bor_vbuaa < vbuz1=vbuaa_bor_vbuc1 < vbum1=vbuaa_bor_vbuc1 < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:12.5
   ldy #0
   lda ({z1}),y
   ora #{c1}
@@ -999,7 +999,17 @@ synthesized vbuz1=_deref_pbuz2_plus_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuz2_pl
   ldy #0
   adc ({z2}),y
   sta {z1}
-CANNOT SYNTHESIZE vbuz1=_deref_pbuz2_band_pbuz1_derefidx_vbuz2
+synthesized vbuz1=_deref_pbuz2_band_pbuz1_derefidx_vbuz2 < vbuz1=_deref_pbum2_band_pbuz1_derefidx_vbum2 < vbuz1=_deref_pbum2_band_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbum2_band_vbuaa < vbuz1=_deref_pbum2_band_vbuxx < vbuz1=vbuxx_band__deref_pbum2 < vbuz1=vbuxx_band_vbuaa < vbum1=vbuxx_band_vbuaa < vbum1=vbuaa_band_vbuxx - clobber:A X Y  cycles:33.0
+  ldy {z2}
+  lda ({z1}),y
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  sax {z1}
 synthesized vbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbuz3 < vbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbum3 < vbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuz2_bor_vbuaa < vbum1=_deref_pbuz2_bor_vbuaa < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:19.0
   ldy {z3}
   lda ({z1}),y
@@ -1106,7 +1116,7 @@ synthesized vbuz1=_deref_pbuz2_band_pbuz3_derefidx_vbuz4 < vbum1=_deref_pbuz2_ba
   ldy {z4}
   and ({z3}),y
   sta {z1}
-synthesized vbuz1=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < vbum1=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < vbuaa=_deref_pbuz1_band_pbuz2_derefidx_vbuc1 < vbuaa=pbuz2_derefidx_vbuc1_band__deref_pbuz1 < vbuaa=pbuz1_derefidx_vbuc1_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
+synthesized vbuz1=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < vbum1=_deref_pbuz2_band_pbuz3_derefidx_vbuc1 < vbuaa=_deref_pbuz1_band_pbuz2_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
   ldy #0
   lda ({z2}),y
   ldy #{c1}
@@ -1135,6 +1145,17 @@ synthesized vbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < vbum1=_deref_pbuz2_m
   sec
   sbc {c1},x
   sta {z1}
+synthesized vbuz1=_deref_pbuz2_minus_pbuc1_derefidx_vbuz1 < vbum1=_deref_pbuz2_minus_pbuc1_derefidx_vbum1 < vbum1=_deref_pbum2_minus_pbuc1_derefidx_vbum1 < vbuaa=_deref_pbum2_minus_pbuc1_derefidx_vbum1 < vbuaa=_deref_pbum1_minus_pbuc1_derefidx_vbum2 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbum1 < vbuaa=vbuaa_minus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:32.0
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z1}
+  sec
+  sbc {c1},y
+  sta {z1}
 synthesized vbuz1=_deref_pbuz2_plus_pbuc1_derefidx_vbuz2 < vbum1=_deref_pbuz2_plus_pbuc1_derefidx_vbuz2 < vbuaa=_deref_pbuz1_plus_pbuc1_derefidx_vbuz1 < vbuaa=pbuc1_derefidx_vbuz1_plus__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuz1_plus_vbuaa < vbuaa=pbuc1_derefidx_vbum1_plus_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_plus_vbuaa < vbuaa=vbuaa_plus_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:20.0
   ldy #0
   lda ({z2}),y
@@ -1160,10 +1181,10 @@ synthesized vbuz1=_deref_pbuz2_bor_vbuc1 < vbum1=_deref_pbuz2_bor_vbuc1 < vbuaa=
   ldy #0
   ora ({z2}),y
   sta {z1}
-synthesized vbuz1=_deref_pbuc1_bxor_vbuaa < vbum1=_deref_pbuc1_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A   cycles:7.0
+synthesized vbuz1=_deref_pbuc1_bxor_vbuaa < vbuz1=vbuaa_bxor__deref_pbuc1 < vbum1=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A   cycles:7.0
   eor {c1}
   sta {z1}
-synthesized vbuz1=_deref_pbuc1_bxor_vbuxx < vbum1=_deref_pbuc1_bxor_vbuxx < vbuaa=_deref_pbuc1_bxor_vbuxx < vbuaa=vbuxx_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A   cycles:9.0
+synthesized vbuz1=_deref_pbuc1_bxor_vbuxx < vbuz1=_deref_pbuc1_bxor_vbuaa < vbuz1=vbuaa_bxor__deref_pbuc1 < vbum1=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A   cycles:9.0
   txa
   eor {c1}
   sta {z1}
@@ -1196,7 +1217,7 @@ synthesized vbuz1=_deref_pbuc1_bor__deref_pbuc2 < vbum1=_deref_pbuc1_bor__deref_
   lda {c1}
   ora {c2}
   sta {z1}
-synthesized vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuaa < vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuc1_bxor_vbuaa < vbum1=_deref_pbuc1_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:14.5
+synthesized vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuaa < vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuc1_bxor_vbuaa < vbuz1=vbuaa_bxor__deref_pbuc1 < vbum1=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:14.5
   tay
   lda ({z1}),y
   eor {c1}
@@ -1603,14 +1624,14 @@ synthesized vbuz1=pbuz1_derefidx_vbuxx_plus_pbuz2_derefidx_vbuz1 < vbuz1=pbuz1_d
   clc
   adc ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuaa_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbum1=pbuz2_derefidx_vbum3_band_vbuaa < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:21.0
+synthesized vbuz1=pbuz1_derefidx_vbuxx_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuaa_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbuz1=pbuz2_derefidx_vbuyy_band_vbuaa < vbum1=pbuz2_derefidx_vbuyy_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:21.0
   txa
   tay
   lda ({z1}),y
   ldy {z3}
   and ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuz1_derefidx_vbuxx_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuaa_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuyy_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:20.0
+synthesized vbuz1=pbuz1_derefidx_vbuxx_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuaa_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuyy_bor_pbuz2_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbuc1_bor_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < vbum1=vbuaa_bor_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:20.0
   txa
   tay
   lda ({z1}),y
@@ -1640,7 +1661,7 @@ synthesized vbuz1=pbuz1_derefidx_vbuxx_plus_pbuc1_derefidx_vbuz2 < vbuz1=pbuz1_d
   clc
   adc {c1},y
   sta {z1}
-synthesized vbuz1=pbuz1_derefidx_vbuxx_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuz1_derefidx_vbuaa_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuyy < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:19.0
+synthesized vbuz1=pbuz1_derefidx_vbuxx_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuz1_derefidx_vbuaa_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuc1_derefidx_vbuc2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuyy < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=vbuaa_band_pbuc1_derefidx_vbuc2 < vbum1=vbuaa_band_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:19.0
   txa
   tay
   lda ({z1}),y
@@ -1814,14 +1835,24 @@ synthesized vbuz1=pbuz1_derefidx_vbuz2_plus_vbuz3 < vbuz1=pbuz1_derefidx_vbum2_p
   clc
   adc {z3}
   sta {z1}
-CANNOT SYNTHESIZE vbuz1=pbuz1_derefidx_vbuz2_band__deref_pbuz2
+synthesized vbuz1=pbuz1_derefidx_vbuz2_band__deref_pbuz2 < vbuz1=pbuz1_derefidx_vbum2_band__deref_pbum2 < vbuz1=pbuz1_derefidx_vbuyy_band__deref_pbum2 < vbuz1=_deref_pbum2_band_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbum2_band_vbuaa < vbuz1=_deref_pbum2_band_vbuxx < vbuz1=vbuxx_band__deref_pbum2 < vbuz1=vbuxx_band_vbuaa < vbum1=vbuxx_band_vbuaa < vbum1=vbuaa_band_vbuxx - clobber:A X Y  cycles:33.0
+  ldy {z2}
+  lda ({z1}),y
+  tax
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  sax {z1}
 synthesized vbuz1=pbuz1_derefidx_vbuz2_bor__deref_pbuz3 < vbuz1=pbuz1_derefidx_vbum2_bor__deref_pbuz3 < vbuz1=pbuz1_derefidx_vbuyy_bor__deref_pbuz2 < vbuz1=_deref_pbuz2_bor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuz2_bor_vbuaa < vbum1=_deref_pbuz2_bor_vbuaa < vbuaa=_deref_pbuz1_bor_vbuaa < vbuaa=vbuaa_bor__deref_pbuz1 - clobber:A Y  cycles:19.0
   ldy {z2}
   lda ({z1}),y
   ldy #0
   ora ({z3}),y
   sta {z1}
-synthesized vbuz1=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < vbuz1=pbuz1_derefidx_vbum2_bxor__deref_pbuc1 < vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuc1_bxor_vbuaa < vbum1=_deref_pbuc1_bxor_vbuaa < vbuaa=_deref_pbuc1_bxor_vbuaa < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:15.5
+synthesized vbuz1=pbuz1_derefidx_vbuz2_bxor__deref_pbuc1 < vbuz1=pbuz1_derefidx_vbum2_bxor__deref_pbuc1 < vbuz1=pbuz1_derefidx_vbuyy_bxor__deref_pbuc1 < vbuz1=_deref_pbuc1_bxor_pbuz1_derefidx_vbuyy < vbuz1=_deref_pbuc1_bxor_vbuaa < vbuz1=vbuaa_bxor__deref_pbuc1 < vbum1=vbuaa_bxor__deref_pbuc1 < vbuaa=vbuaa_bxor__deref_pbuc1 - clobber:A Y  cycles:15.5
   ldy {z2}
   lda ({z1}),y
   eor {c1}
@@ -2793,7 +2824,7 @@ synthesized vbuz1=pbuz2_derefidx_vbuz3_plus_vbuaa < vbuz1=pbuz2_derefidx_vbum3_p
   clc
   adc ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuz2_derefidx_vbuz3_band_vbuyy < vbum1=pbuz2_derefidx_vbuz3_band_vbuyy < vbum1=pbuz2_derefidx_vbuz3_band_vbuaa < vbuaa=pbuz1_derefidx_vbuz2_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuz2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbum2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:13.5
+synthesized vbuz1=pbuz2_derefidx_vbuz3_band_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbuz1=pbuz2_derefidx_vbuyy_band_vbuaa < vbum1=pbuz2_derefidx_vbuyy_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:13.5
   tya
   ldy {z3}
   and ({z2}),y
@@ -2851,7 +2882,7 @@ synthesized vbuz1=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuz4 < vbuz1=pbuz2_d
   ldy $ff
   and ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuc1_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbum1=pbuz2_derefidx_vbum3_band_vbuaa < vbuaa=pbuz1_derefidx_vbum2_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:19.0
+synthesized vbuz1=pbuz2_derefidx_vbuz3_band_pbuz1_derefidx_vbuc1 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuc1 < vbuz1=pbuz1_derefidx_vbuc1_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz1_derefidx_vbuyy_band_pbuz2_derefidx_vbum3 < vbuz1=pbuz2_derefidx_vbum3_band_pbuz1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbuz1=pbuz2_derefidx_vbuyy_band_vbuaa < vbum1=pbuz2_derefidx_vbuyy_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:19.0
   ldy #{c1}
   lda ({z1}),y
   ldy {z3}
@@ -2990,7 +3021,7 @@ synthesized vbuz1=pbuz2_derefidx_vbuc1_band_vbuz3 < vbum1=pbuz2_derefidx_vbuc1_b
   ldy #{c1}
   and ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuz1_derefidx_vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
+synthesized vbuz1=pbuz2_derefidx_vbuc1_bor__deref_pbuz1 < vbuz1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=pbuz2_derefidx_vbuc1_bor_vbuaa < vbum1=vbuaa_bor_pbuz2_derefidx_vbuc1 < vbum1=vbuaa_bor_pbuz2_derefidx_vbuyy < vbuaa=vbuaa_bor_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
   ldy #0
   lda ({z1}),y
   ldy #{c1}
@@ -4764,7 +4795,7 @@ synthesized vbuz1=pbuc1_derefidx_vbuc1_band__deref_pbuz1 < vbuz1=pbuc1_derefidx_
   ldy #{c1}
   and {c1},y
   sta {z1}
-synthesized vbuz1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < vbum1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbuz1 < vbuaa=_deref_pbuz1_bor_pbuc1_derefidx_vbuc1 < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuc1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
+synthesized vbuz1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < vbum1=pbuc1_derefidx_vbuc1_bor__deref_pbuz2 < vbuaa=pbuc1_derefidx_vbuc1_bor__deref_pbuz1 < vbuaa=pbuc1_derefidx_vbuc1_bor_vbuaa < vbuaa=pbuc1_derefidx_vbuyy_bor_vbuaa < vbuaa=vbuaa_bor_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
   ldy #0
   lda ({z2}),y
   ldy #{c1}
@@ -4884,7 +4915,7 @@ synthesized vbuz1=pbuc1_derefidx_vbuc1_plus_pbuz2_derefidx_vbuz1 < vbum1=pbuc1_d
   clc
   adc ({z2}),y
   sta {z1}
-synthesized vbuz1=pbuc1_derefidx_vbuc1_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz2_derefidx_vbuz3_band_pbuc1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbuz3_band_vbuaa < vbum1=pbuz2_derefidx_vbuz3_band_vbuaa < vbuaa=pbuz1_derefidx_vbuz2_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuz2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbum2 < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
+synthesized vbuz1=pbuc1_derefidx_vbuc1_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuc1_derefidx_vbuyy_band_pbuz2_derefidx_vbuz3 < vbuz1=pbuz2_derefidx_vbuz3_band_pbuc1_derefidx_vbuyy < vbuz1=pbuz2_derefidx_vbuz3_band_vbuaa < vbuz1=pbuz2_derefidx_vbum3_band_vbuaa < vbuz1=pbuz2_derefidx_vbuyy_band_vbuaa < vbum1=pbuz2_derefidx_vbuyy_band_vbuaa < vbuaa=pbuz1_derefidx_vbuyy_band_vbuaa < vbuaa=vbuaa_band_pbuz1_derefidx_vbuyy - clobber:A Y  cycles:18.0
   ldy #{c1}
   lda {c1},y
   ldy {z3}
@@ -5110,7 +5141,7 @@ synthesized vbuz1=pbuc1_derefidx_vbuc2_plus_vbuz1 < vbuz1=pbuc1_derefidx_vbuc2_p
   clc
   adc {c1},y
   sta {z1}
-synthesized vbuz1=pbuc1_derefidx_vbuc2_band__deref_pbuz1 < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
+synthesized vbuz1=pbuc1_derefidx_vbuc2_band__deref_pbuz1 < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=vbuaa_band_pbuc1_derefidx_vbuc2 < vbum1=vbuaa_band_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:17.0
   ldy #0
   lda ({z1}),y
   ldy #{c2}
@@ -5182,7 +5213,7 @@ synthesized vbuz1=pbuc1_derefidx_vbuc2_plus_pbuz1_derefidx_vbuyy < vbuz1=pbuc1_d
   clc
   adc {c1},y
   sta {z1}
-synthesized vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuz2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbum2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuyy < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=pbuc1_derefidx_vbuc2_band_vbuaa < vbuaa=vbuaa_band_pbuc1_derefidx_vbuc2 < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:18.0
+synthesized vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuz2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbum2 < vbuz1=pbuc1_derefidx_vbuc2_band_pbuz1_derefidx_vbuyy < vbuz1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=pbuc1_derefidx_vbuc2_band_vbuaa < vbum1=vbuaa_band_pbuc1_derefidx_vbuc2 < vbum1=vbuaa_band_pbuc1_derefidx_vbuyy < vbuaa=vbuaa_band_pbuc1_derefidx_vbuyy - clobber:A Y  cycles:18.0
   ldy {z2}
   lda ({z1}),y
   ldy #{c2}
@@ -5536,11 +5567,11 @@ synthesized vbuz1=vbuc1_band_vbuaa < vbuz1=vbuaa_band_vbuc1 < vbum1=vbuaa_band_v
 synthesized vbuz1=vbuc1_band_vbuaa < vbuz1=vbuaa_band_vbuc1 < vbuz1=vbuaa_band_vbuxx < vbum1=vbuaa_band_vbuxx - clobber:X   cycles:5.0
   ldx #{c1}
   sax {z1}
-synthesized vbuz1=vbuc1_bor_vbuxx < vbum1=vbuc1_bor_vbuxx < vbuaa=vbuc1_bor_vbuxx < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A   cycles:7.0
+synthesized vbuz1=vbuc1_bor_vbuxx < vbuz1=vbuc1_bor_vbuaa < vbuz1=vbuaa_bor_vbuc1 < vbum1=vbuaa_bor_vbuc1 < vbuaa=vbuaa_bor_vbuc1 - clobber:A   cycles:7.0
   txa
   ora #{c1}
   sta {z1}
-synthesized vbuz1=vbuc1_bor_vbuyy < vbum1=vbuc1_bor_vbuyy < vbum1=vbuc1_bor_vbuaa < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A   cycles:7.0
+synthesized vbuz1=vbuc1_bor_vbuyy < vbuz1=vbuc1_bor_vbuaa < vbuz1=vbuaa_bor_vbuc1 < vbum1=vbuaa_bor_vbuc1 < vbuaa=vbuaa_bor_vbuc1 - clobber:A   cycles:7.0
   tya
   ora #{c1}
   sta {z1}
@@ -5575,7 +5606,7 @@ synthesized vbuz1=vbuc1_band_pbuz1_derefidx_vbuaa < vbuz1=vbuc1_band_pbuz1_deref
   lda ({z1}),y
   and #{c1}
   sta {z1}
-synthesized vbuz1=vbuc1_bor_pbuz1_derefidx_vbuxx < vbuz1=vbuc1_bor_pbuz1_derefidx_vbuaa < vbuz1=vbuc1_bor_pbuz1_derefidx_vbuyy < vbuz1=vbuc1_bor_vbuaa < vbum1=vbuc1_bor_vbuaa < vbuaa=vbuc1_bor_vbuaa < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:14.5
+synthesized vbuz1=vbuc1_bor_pbuz1_derefidx_vbuxx < vbuz1=vbuc1_bor_pbuz1_derefidx_vbuaa < vbuz1=vbuc1_bor_pbuz1_derefidx_vbuyy < vbuz1=vbuc1_bor_vbuaa < vbuz1=vbuaa_bor_vbuc1 < vbum1=vbuaa_bor_vbuc1 < vbuaa=vbuaa_bor_vbuc1 - clobber:A Y  cycles:14.5
   txa
   tay
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-copy.log b/src/test/ref/fragments-assignment-copy.log
index 82333e56c..2971128fd 100644
--- a/src/test/ref/fragments-assignment-copy.log
+++ b/src/test/ref/fragments-assignment-copy.log
@@ -20,7 +20,13 @@ synthesized vbuaa=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuaa < vbuaa=pbuz
   lda ({z1}),y
 loaded vbuaa=pbuz1_derefidx_vbuyy - clobber:A   cycles:5.5
   lda ({z1}),y
-CANNOT SYNTHESIZE vbuaa=pbuz1_derefidx_vbuz1
+synthesized vbuaa=pbuz1_derefidx_vbuz1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:20.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
 synthesized vbuaa=pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:8.5
   ldy {z2}
   lda ({z1}),y
@@ -87,7 +93,14 @@ synthesized vbuxx=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuxx < vbuaa=pbuz
 synthesized vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A X   cycles:7.5
   lda ({z1}),y
   tax
-CANNOT SYNTHESIZE vbuxx=pbuz1_derefidx_vbuz1
+synthesized vbuxx=pbuz1_derefidx_vbuz1 < vbuxx=pbum1_derefidx_vbum1 < vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:22.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  tax
 synthesized vbuxx=pbuz1_derefidx_vbuz2 < vbuxx=pbuz1_derefidx_vbum2 < vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:10.5
   ldy {z2}
   lda ({z1}),y
@@ -165,7 +178,14 @@ synthesized vbuyy=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuxx < vbuaa=pbuz
 synthesized vbuyy=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:7.5
   lda ({z1}),y
   tay
-CANNOT SYNTHESIZE vbuyy=pbuz1_derefidx_vbuz1
+synthesized vbuyy=pbuz1_derefidx_vbuz1 < vbuyy=pbum1_derefidx_vbum1 < vbuyy=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:22.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  tay
 synthesized vbuyy=pbuz1_derefidx_vbuz2 < vbuyy=pbuz1_derefidx_vbum2 < vbuyy=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:10.5
   ldy {z2}
   lda ({z1}),y
@@ -266,7 +286,14 @@ synthesized vbuz1=pbuz1_derefidx_vbuxx < vbuz1=pbuz1_derefidx_vbuaa < vbuz1=pbuz
 synthesized vbuz1=pbuz1_derefidx_vbuyy < vbuz1=vbuaa < vbum1=vbuaa - clobber:A   cycles:8.5
   lda ({z1}),y
   sta {z1}
-CANNOT SYNTHESIZE vbuz1=pbuz1_derefidx_vbuz1
+synthesized vbuz1=pbuz1_derefidx_vbuz1 < vbum1=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:23.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {z1}
 synthesized vbuz1=pbuz1_derefidx_vbuz2 < vbuz1=pbuz1_derefidx_vbum2 < vbuz1=pbuz1_derefidx_vbuyy < vbuz1=vbuaa < vbum1=vbuaa - clobber:A Y  cycles:11.5
   ldy {z2}
   lda ({z1}),y
@@ -291,7 +318,14 @@ synthesized vbuz1=pbuz2_derefidx_vbuz1 < vbum1=pbuz2_derefidx_vbum1 < vbuaa=pbuz
   ldy {z1}
   lda ({z2}),y
   sta {z1}
-CANNOT SYNTHESIZE vbuz1=pbuz2_derefidx_vbuz2
+synthesized vbuz1=pbuz2_derefidx_vbuz2 < vbum1=pbuz2_derefidx_vbuz2 < vbum1=pbum2_derefidx_vbum2 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:23.5
+  ldy {z2}
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  sta {z1}
 synthesized vbuz1=pbuz2_derefidx_vbuz3 < vbum1=pbuz2_derefidx_vbuz3 < vbum1=pbuz2_derefidx_vbum3 < vbuaa=pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:11.5
   ldy {z3}
   lda ({z2}),y
@@ -429,7 +463,15 @@ synthesized _deref_pbuz1=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clo
   lda ({z1}),y
   ldy #0
   sta ({z1}),y
-CANNOT SYNTHESIZE _deref_pbuz1=pbuz1_derefidx_vbuz1
+synthesized _deref_pbuz1=pbuz1_derefidx_vbuz1 < vbuaa=pbuz1_derefidx_vbuz1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:28.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy #0
+  sta ({z1}),y
 synthesized _deref_pbuz1=pbuz1_derefidx_vbuz2 < _deref_pbuz1=pbuz1_derefidx_vbum2 < _deref_pbuz1=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:16.5
   ldy {z2}
   lda ({z1}),y
@@ -460,7 +502,15 @@ synthesized _deref_pbuz1=pbuz2_derefidx_vbuz1 < vbuaa=pbuz2_derefidx_vbuz1 < vbu
   lda ({z2}),y
   ldy #0
   sta ({z1}),y
-CANNOT SYNTHESIZE _deref_pbuz1=pbuz2_derefidx_vbuz2
+synthesized _deref_pbuz1=pbuz2_derefidx_vbuz2 < _deref_pbuz1=pbum2_derefidx_vbum2 < _deref_pbuz1=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:28.5
+  ldy {z2}
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy #0
+  sta ({z1}),y
 synthesized _deref_pbuz1=pbuz2_derefidx_vbuz3 < _deref_pbuz1=pbuz2_derefidx_vbum3 < _deref_pbuz1=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:16.5
   ldy {z3}
   lda ({z2}),y
@@ -551,7 +601,14 @@ synthesized _deref_pbuc1=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbuxx < vbu
 synthesized _deref_pbuc1=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A   cycles:9.5
   lda ({z1}),y
   sta {c1}
-CANNOT SYNTHESIZE _deref_pbuc1=pbuz1_derefidx_vbuz1
+synthesized _deref_pbuc1=pbuz1_derefidx_vbuz1 < _deref_pbuc1=pbum1_derefidx_vbum1 < _deref_pbuc1=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:24.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1}
 synthesized _deref_pbuc1=pbuz1_derefidx_vbuz2 < _deref_pbuc1=pbuz1_derefidx_vbum2 < _deref_pbuc1=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:12.5
   ldy {z2}
   lda ({z1}),y
@@ -785,7 +842,16 @@ synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbu
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:32.5
+  ldy {z2}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:20.5
   ldy {z3}
   sta $ff
@@ -956,7 +1022,16 @@ synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbu
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz2 < pbuz1_derefidx_vbuxx=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuxx=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:32.5
+  ldy {z2}
+  stx $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuxx=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:20.5
   ldy {z3}
   stx $ff
@@ -1134,7 +1209,17 @@ loaded pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuyy - clobber:A   cycles:11.5
   lda ({z2}),y
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbuz1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:32.5
+  sty $ff
+  
+  ldy {z2}
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuyy=pbuz2_derefidx_vbuz3 < vbuaa=pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:20.5
   sty $ff
   
@@ -1272,7 +1357,21 @@ synthesized pbuz1_derefidx_vbuz1=_deref_pbuz1 < pbuz1_derefidx_vbuz1=vbuaa < pbu
   sty $ff
   ldy $fd
   sta ($fe),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz1=_deref_pbuz2
+synthesized pbuz1_derefidx_vbuz1=_deref_pbuz2 < pbum1_derefidx_vbum1=_deref_pbuz2 < pbum1_derefidx_vbum1=_deref_pbum2 < pbum1_derefidx_vbum1=vbuaa < pbum1_derefidx_vbuyy=vbuaa - clobber:A Y  cycles:46.5
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy {z1}
+  sty $fd
+  ldy {z1}
+  sty $fe
+  ldy {z1}+1
+  sty $ff
+  ldy $fd
+  sta ($fe),y
 synthesized pbuz1_derefidx_vbuz1=_deref_pbuc1 < pbum1_derefidx_vbum1=_deref_pbuc1 < pbum1_derefidx_vbum1=vbuaa < pbum1_derefidx_vbuyy=vbuaa - clobber:A Y  cycles:31.0
   lda {c1}
   ldy {z1}
@@ -1465,7 +1564,17 @@ synthesized pbuz1_derefidx_vbuz2=_deref_pbuz1 < pbuz1_derefidx_vbum2=_deref_pbuz
   lda ({z1}),y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=_deref_pbuz2 < pbuz1_derefidx_vbum2=_deref_pbum2 < pbuz1_derefidx_vbuaa=_deref_pbum2 < vbuaa=_deref_pbum1 < vbuaa=vbuaa - clobber:A Y  cycles:34.5
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=_deref_pbuz3 < pbuz1_derefidx_vbum2=_deref_pbuz3 < vbuaa=_deref_pbuz1 - clobber:A Y  cycles:16.5
   ldy #0
   lda ({z3}),y
@@ -1505,13 +1614,74 @@ synthesized pbuz1_derefidx_vbuz2=pbuz1_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbu
   lda ({z1}),y
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuaa
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuxx
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuyy
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuaa < pbuz1_derefidx_vbum2=pbum2_derefidx_vbuaa < pbuz1_derefidx_vbuyy=pbum2_derefidx_vbuaa < vbuaa=pbum1_derefidx_vbuaa < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:34.5
+  ldy {z2}
+  sty $ff
+  
+  tay
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuxx < pbuz1_derefidx_vbum2=pbum2_derefidx_vbuxx < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuxx < vbuaa=pbum1_derefidx_vbuxx < vbuaa=pbum1_derefidx_vbuaa < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:36.5
+  lda {z2}
+  sta $ff
+  txa
+  tay
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuyy < pbuz1_derefidx_vbum2=pbum2_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:32.5
+  lda {z2}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuz2
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuz3
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuc1
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuz2 < pbuz1_derefidx_vbum2=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:35.5
+  lda {z2}
+  ldy {z2}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbum2_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbum2_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:35.5
+  lda {z2}
+  ldy {z3}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
+synthesized pbuz1_derefidx_vbuz2=pbuz2_derefidx_vbuc1 < pbuz1_derefidx_vbum2=pbum2_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuc1 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:34.5
+  lda {z2}
+  ldy #{c1}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuaa < pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuyy < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:16.5
   tay
   lda ({z3}),y
@@ -1532,7 +1702,15 @@ synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz2 < pbuz1_derefidx_vbum2=pbu
   ldy {z2}
   lda ({z3}),y
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz3
+synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuz3 < pbuz1_derefidx_vbum2=pbum3_derefidx_vbum3 < pbuz1_derefidx_vbum2=pbum3_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:29.5
+  ldy {z3}
+  lda {z3}
+  sta $fe
+  lda {z3}+1
+  sta $ff
+  lda ($fe),y
+  ldy {z2}
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuz2=pbuz3_derefidx_vbuz4 < pbuz1_derefidx_vbum2=pbuz3_derefidx_vbuz4 < vbuaa=pbuz1_derefidx_vbuz2 < vbuaa=pbuz1_derefidx_vbum2 < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:17.5
   ldy {z4}
   lda ({z3}),y
@@ -1686,7 +1864,17 @@ synthesized pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbuyy < pbuz1_derefidx_vbuaa=pbu
   ldy $ff
   sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbuz1
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbuz2
+synthesized pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbuz2 < pbuz1_derefidx_vbuc1=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbum2 < pbuz1_derefidx_vbuaa=pbum2_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:34.5
+  lda #{c1}
+  ldy {z2}
+  sta $ff
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta ({z1}),y
 synthesized pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbuz3 < pbuz1_derefidx_vbuc1=pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbum3 < pbuz1_derefidx_vbuaa=pbuz2_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:22.5
   lda #{c1}
   ldy {z3}
@@ -1836,7 +2024,27 @@ synthesized pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuxx=pbu
   tax
   lda ({z1}),y
   sta {c1},x
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuz1
+synthesized pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuaa=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuaa=pbum1_derefidx_vbuyy < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:27.5
+  ldy {z1}
+  tax
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuz1 < vbuaa=pbuz1_derefidx_vbuz1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:33.5
+  tay
+  sty $ff
+  
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:15.5
   ldy {z2}
   tax
@@ -2104,7 +2312,14 @@ synthesized pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbu
 synthesized pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A   cycles:10.5
   lda ({z1}),y
   sta {c1},x
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuz1
+synthesized pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:25.5
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
 synthesized pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A Y  cycles:13.5
   ldy {z2}
   lda ({z1}),y
@@ -2282,7 +2497,27 @@ synthesized pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuxx < vbuaa=pbuz1_derefidx_vbu
 synthesized pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A   cycles:10.5
   lda ({z1}),y
   sta {c1},y
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuz1
+synthesized pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuyy=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuaa=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuaa=pbum1_derefidx_vbuyy < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:29.5
+  tya
+  ldy {z1}
+  tax
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuz1 < vbuaa=pbuz1_derefidx_vbuz1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:31.5
+  sty $ff
+  
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuyy=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuaa=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:17.5
   tya
   ldy {z2}
@@ -2530,13 +2765,53 @@ synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbu
   lda ({z1}),y
   ldy {z1}
   sta {c1},y
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz1
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbum1=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:28.5
+  ldx {z1}
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbum1=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuyy=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:34.5
+  ldy {z1}
+  sty $ff
+  
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuaa < pbuc1_derefidx_vbum1=vbuaa < pbuc1_derefidx_vbuyy=vbuaa - clobber:A Y  cycles:16.5
   ldy {z2}
   lda ({z1}),y
   ldy {z1}
   sta {c1},y
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc1
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbum1_derefidx_vbuc1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuc1 < vbuaa=pbum1_derefidx_vbuc1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:27.5
+  ldx {z1}
+  ldy #{c1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc1 < pbuc1_derefidx_vbum1=pbum1_derefidx_vbuc1 < pbuc1_derefidx_vbuyy=pbum1_derefidx_vbuc1 < vbuaa=pbum1_derefidx_vbuc1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:33.5
+  ldy {z1}
+  sty $ff
+  
+  ldy #{c1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuc2 < pbuc1_derefidx_vbuz1=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuz1=vbuaa < pbuc1_derefidx_vbum1=vbuaa < pbuc1_derefidx_vbuyy=vbuaa - clobber:A Y  cycles:15.5
   ldy #{c2}
   lda ({z1}),y
@@ -2587,7 +2862,27 @@ synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz1 < pbuc1_derefidx_vbum1=pbu
   ldy {z1}
   lda ({z2}),y
   sta {c1},y
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz2
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=pbum2_derefidx_vbum2 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:28.5
+  ldx {z1}
+  ldy {z2}
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuz2 < pbuc1_derefidx_vbum1=pbum2_derefidx_vbum2 < pbuc1_derefidx_vbuyy=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:34.5
+  ldy {z1}
+  sty $ff
+  
+  ldy {z2}
+  lda {z2}
+  sta $fe
+  lda {z2}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuz1=pbuz2_derefidx_vbuz3 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbuz3 < pbuc1_derefidx_vbum1=pbuz2_derefidx_vbum3 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuxx=pbuz1_derefidx_vbuyy < vbuaa=pbuz1_derefidx_vbuyy - clobber:A X Y  cycles:16.5
   ldx {z1}
   ldy {z3}
@@ -2908,7 +3203,27 @@ synthesized pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuc2=vbu
   lda ({z1}),y
   ldy #{c2}
   sta {c1},y
-CANNOT SYNTHESIZE pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuz1
+synthesized pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuc2=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuxx=pbum1_derefidx_vbuyy < vbuaa=pbum1_derefidx_vbuyy - clobber:A X Y  cycles:27.5
+  ldx #{c2}
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  sta {c1},x
+synthesized pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuz1 < pbuc1_derefidx_vbuc2=pbum1_derefidx_vbum1 < pbuc1_derefidx_vbuyy=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbum1 < vbuaa=pbum1_derefidx_vbuyy - clobber:A Y  cycles:33.5
+  ldy #{c2}
+  sty $ff
+  
+  ldy {z1}
+  lda {z1}
+  sta $fe
+  lda {z1}+1
+  sta $ff
+  lda ($fe),y
+  ldy $ff
+  sta {c1},y
 synthesized pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuz2 < pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbum2 < pbuc1_derefidx_vbuc2=pbuz1_derefidx_vbuyy < pbuc1_derefidx_vbuc2=vbuaa < pbuc1_derefidx_vbuyy=vbuaa - clobber:A Y  cycles:15.5
   ldy {z2}
   lda ({z1}),y
diff --git a/src/test/ref/fragments-assignment-unary.log b/src/test/ref/fragments-assignment-unary.log
index 733411886..313bd5af0 100644
--- a/src/test/ref/fragments-assignment-unary.log
+++ b/src/test/ref/fragments-assignment-unary.log
@@ -2566,7 +2566,19 @@ synthesized pbuz1_derefidx_vbuz2=_neg__deref_pbuz1 < pbuz1_derefidx_vbum2=_neg__
   adc #$01
   ldy {z2}
   sta ({z1}),y
-CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_dec__deref_pbuz2
+synthesized pbuz1_derefidx_vbuz2=_dec__deref_pbuz2 < pbuz1_derefidx_vbum2=_dec__deref_pbum2 < pbuz1_derefidx_vbuaa=_dec__deref_pbum2 < vbuaa=_dec__deref_pbum1 < vbuaa=_dec_vbuaa < vbuaa=vbuaa_minus_1 - clobber:A Y  cycles:38.5
+  lda {z2}
+  sta $ff
+  ldy {z2}
+  sty $fe
+  ldy {z2}+1
+  sty $ff
+  ldy #0
+  lda ($fe),y
+  sec
+  sbc #1
+  ldy $ff
+  sta ({z1}),y
 CANNOT SYNTHESIZE pbuz1_derefidx_vbuz2=_pos__deref_pbuz2
 synthesized pbuz1_derefidx_vbuz2=_dec__deref_pbuz3 < pbuz1_derefidx_vbum2=_dec__deref_pbuz3 < vbuaa=_dec__deref_pbuz1 < vbuaa=_dec_vbuaa < vbuaa=vbuaa_minus_1 - clobber:A Y  cycles:20.5
   ldy #0