anchor.diff:     // This function encapsulates ALL the opcodes.
      // It has internal functions that group related sub-opcodes.
   
  -   function Action fa_exec(Instr instr);
  +   function Action fa_exec(Decoded_Instr decoded);
         action
  -         // ----------------------------------------------------------------
  -         // Instruction decode
  -
  -         Decoded_Instr decoded = fv_decode(instr);
   
            // Values of Rs1 and Rs2 fields of the instr, unsigned
            Word    v1   = ((decoded.rs1 == 0) ? 0: regfile.sub(decoded.rs1));
  
positive.code:          // ----------------------------------------------------------------
           // Main body of fa_exec(), dispatching to the sub functions
           // based on major OPCODE
  
           if (cfg_verbose != 0) $display("[%7d] fa_exec: instr 0x%08h", csr_cycle, instr);
  
           if      (decoded.opcode == op_LUI)      fa_exec_LUI();
           else if (decoded.opcode == op_AUIPC)    fa_exec_AUIPC();
  
negative.code:                if (   (decoded.funct3 == f3_FENCE)
                     && (decoded.rd == 0)
                     && (decoded.rs1 == 0)
                     && (truncateLSB(decoded.imm12_I) == 4'b0)) begin   // same as instr[31:28] on Spec v 2.2
                                                                   fa_finish_with_no_output;
                                                                end
  
                 // FENCE.I
                 else if (   (decoded.funct3 == f3_FENCE_I)
  