From 14d46bccba450eb00fda58f7be532e5438eebbcd Mon Sep 17 00:00:00 2001 From: florian Date: Sun, 19 Apr 2020 15:52:41 +0000 Subject: [PATCH] * Xtensa: make use of extui for shifting with constant values >=16 git-svn-id: trunk@44856 - --- compiler/xtensa/cgcpu.pas | 2 ++ 1 file changed, 2 insertions(+) diff --git a/compiler/xtensa/cgcpu.pas b/compiler/xtensa/cgcpu.pas index 942039966c..eac742d810 100644 --- a/compiler/xtensa/cgcpu.pas +++ b/compiler/xtensa/cgcpu.pas @@ -517,6 +517,8 @@ implementation list.concat(taicpu.op_reg_reg_const(A_SLLI,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 + list.concat(taicpu.op_reg_reg_const_const(A_EXTUI,dst,src,a,32-a)) else begin tmpreg:=getintregister(list,size);