git-svn-id: trunk@41650 -
@@ -485,8 +485,8 @@ Unit racpugas;
useszr:=false;
for i:=low(instr.operands) to pred(opnr) do
begin
- if (instr.operands[1].opr.typ=OPR_REGISTER) then
- case getsupreg(instr.operands[1].opr.reg) of
+ if (instr.operands[i].opr.typ=OPR_REGISTER) then
+ case getsupreg(instr.operands[i].opr.reg) of
RS_XZR:
useszr:=true;
RS_SP:
@@ -494,7 +494,10 @@ Unit racpugas;
end;
result:=valid_shifter_operand(instr.opcode,useszr,usessp,instr.Is64bit,sm,instr.operands[opnr].opr.shifterop.shiftimm);
- end
+ if result then
+ instr.Ops:=opnr;
+ end;
+ break;