* make use of not_zero in tbasecgarm.a_bit_scan_reg_reg

This commit is contained in:
florian 2025-02-12 23:01:50 +01:00
parent 1a07e13c02
commit 490c431bf9

View File

@ -1841,12 +1841,15 @@ unit cgcpu;
begin
list.Concat(taicpu.op_reg_reg(A_RBIT,dst,src));
list.Concat(taicpu.op_reg_reg(A_CLZ,dst,dst));
a_reg_alloc(list,NR_DEFAULTFLAGS);
list.Concat(taicpu.op_reg_const(A_CMP,dst,32));
if GenerateThumb2Code then
list.Concat(taicpu.op_cond(A_IT, C_EQ));
list.Concat(setcondition(taicpu.op_reg_const(A_MOV,dst,$ff),C_EQ));
a_reg_dealloc(list,NR_DEFAULTFLAGS);
if not(not_zero) then
begin
a_reg_alloc(list,NR_DEFAULTFLAGS);
list.Concat(taicpu.op_reg_const(A_CMP,dst,32));
if GenerateThumb2Code then
list.Concat(taicpu.op_cond(A_IT, C_EQ));
list.Concat(setcondition(taicpu.op_reg_const(A_MOV,dst,$ff),C_EQ));
a_reg_dealloc(list,NR_DEFAULTFLAGS);
end;
end;
end;