From 74abe873151caecdd73cb2442631050bee0bb7d3 Mon Sep 17 00:00:00 2001 From: florian Date: Wed, 22 Apr 2020 21:03:06 +0000 Subject: [PATCH] * Xtensa: do SAR by a constant using SRAI git-svn-id: trunk@45000 - --- compiler/xtensa/cgcpu.pas | 2 ++ 1 file changed, 2 insertions(+) diff --git a/compiler/xtensa/cgcpu.pas b/compiler/xtensa/cgcpu.pas index eac742d810..2319667781 100644 --- a/compiler/xtensa/cgcpu.pas +++ b/compiler/xtensa/cgcpu.pas @@ -515,6 +515,8 @@ implementation end else if (op=OP_SHL) and (a>=1) and (a<=31) then list.concat(taicpu.op_reg_reg_const(A_SLLI,dst,src,a)) + else if (op=OP_SAR) and (a>=0) and (a<=31) then + list.concat(taicpu.op_reg_reg_const(A_SRAI,dst,src,a)) else if (op=OP_SHR) and (a>=0) and (a<=15) then list.concat(taicpu.op_reg_reg_const(A_SRLI,dst,src,a)) else if (op=OP_SHR) and (a>15) and (a<=31) then