Xtensa - Compiler produces incorrect LSI instruction, immediate parameter not properly aligned
Original Reporter info from Mantis: ccrause @ccrause
-
Reporter name: Christo Crause
Original Reporter info from Mantis: ccrause @ccrause
- Reporter name: Christo Crause
Description:
When compiling the xtensa-freertos target, specifically sysutlis.pp (see steps to reproduce) the assembler complains about an invalid value for operand 3. The offending value is the offset of 30, which is not properly aligned according to the ISA.
Steps to reproduce:
cd ~/fpc/3.3.1/rtl/freertos
/home/christo/fpc/3.3.1/compiler/xtensa/pp -Tfreertos -Pxtensa -XPxtensa-esp32-elf- -Xr -Fi../inc -Fi../xtensa -FE. -FU../../rtl/units/xtensa-freertos -Cawindowed -CfHARD -O2 -dxtensa -Fi../objpas/sysutils sysutils.pp
../../rtl/units/xtensa-freertos/sysutils.s: Assembler messages:
../../rtl/units/xtensa-freertos/sysutils.s:34685: Error: operand 3 of 'lsi' has invalid value '30'
../../rtl/units/xtensa-freertos/sysutils.s:34696: Error: operand 3 of 'lsi' has invalid value '30'
../../rtl/units/xtensa-freertos/sysutils.s:36029: Error: operand 3 of 'lsi' has invalid value '30'
../../rtl/units/xtensa-freertos/sysutils.s:36040: Error: operand 3 of 'lsi' has invalid value '30'
Mantis conversion info:
- Mantis ID: 36890
- Build: 44654
- Version: 3.3.1
- Fixed in version: 3.3.1