Browse Source

Avoid generation of invalid 'cb(n)z sp,label' instruction

Pierre Muller 2 years ago
parent
commit
cd8aa3f0e0
1 changed files with 1 additions and 0 deletions
  1. 1 0
      compiler/aarch64/aoptcpu.pas

+ 1 - 0
compiler/aarch64/aoptcpu.pas

@@ -996,6 +996,7 @@ Implementation
          cb(n)z reg0,label
       }
       if MatchOpType(taicpu(p),top_reg,top_const) and
+        (taicpu(p).oper[0]^.reg<>NR_SP) and
         (taicpu(p).oper[1]^.val=0) and
         GetNextInstruction(p,hp1) and
         MatchInstruction(hp1,A_B,[PF_None]) and