diff --git a/compiler/xtensa/cgcpu.pas b/compiler/xtensa/cgcpu.pas index 168bfe6e2f..45cb4c4eb9 100644 --- a/compiler/xtensa/cgcpu.pas +++ b/compiler/xtensa/cgcpu.pas @@ -488,10 +488,10 @@ implementation else if op in [OP_SAR,OP_SHL,OP_SHR] then begin if op=OP_SHL then - list.concat(taicpu.op_reg(A_SSL,src1)) + list.concat(taicpu.op_reg(A_SSL,src2)) else - list.concat(taicpu.op_reg(A_SSR,src1)); - list.concat(taicpu.op_reg_reg(TOpCG2AsmOp[op],dst,src2)); + list.concat(taicpu.op_reg(A_SSR,src2)); + list.concat(taicpu.op_reg_reg(TOpCG2AsmOp[op],dst,src1)); maybeadjustresult(list,op,size,dst); end else