Browse Source

* fixes tcg64frv.a_op64_const_reg_reg based on the analysis of Bart B, resolves #39953

florian 2 years ago
parent
commit
e2a26ecece
1 changed files with 1 additions and 1 deletions
  1. 1 1
      compiler/riscv32/cgcpu.pas

+ 1 - 1
compiler/riscv32/cgcpu.pas

@@ -481,7 +481,7 @@ unit cgcpu;
                   else
                   else
                     begin
                     begin
                       cg.a_load_const_reg(list,OS_INT,aint(lo(value)),tmplo);
                       cg.a_load_const_reg(list,OS_INT,aint(lo(value)),tmplo);
-                      list.concat(taicpu.op_reg_reg_reg(A_SUB,tmplo,tmplo,regsrc.reglo))
+                      list.concat(taicpu.op_reg_reg_reg(A_SUB,tmplo,regsrc.reglo,tmplo))
                     end;
                     end;
                   list.concat(taicpu.op_reg_reg_reg(A_SLTU,carry,regsrc.reglo,tmplo));
                   list.concat(taicpu.op_reg_reg_reg(A_SLTU,carry,regsrc.reglo,tmplo));
                   cg.a_load_reg_reg(list,OS_32,OS_32,tmplo,regdst.reglo);
                   cg.a_load_reg_reg(list,OS_32,OS_32,tmplo,regdst.reglo);