View Issue Details

IDProjectCategoryView StatusLast Update
0037317FPCCompilerpublic2020-07-10 08:50
ReporterChristo Crause Assigned ToFlorian  
PrioritynormalSeverityminorReproducibilityN/A
Status closedResolutionfixed 
Product Version3.3.1 
Fixed in Version3.3.1 
Summary0037317: Xtensa [patch] Update call0 volatile register list
DescriptionI've ran into problems where calling malloc from the toolchain resulted in corrupt registers. The Xtensa ISA states that the callee-saved registers are a11 - a15, the rest are caller saved.

Attached a patch that updates the get_volatile_registers_int function for call0 to return a0 - a11, which fixed my problem.
TagsNo tags attached.
Fixed in Revision45749
FPCOldBugId
FPCTarget-
Attached Files

Activities

Christo Crause

2020-07-08 22:09

reporter  

cpupara.patch (406 bytes)   
Index: compiler/xtensa/cpupara.pas
===================================================================
--- compiler/xtensa/cpupara.pas	(revision 45742)
+++ compiler/xtensa/cpupara.pas	(working copy)
@@ -65,7 +65,7 @@
         if target_info.abi=abi_xtensa_windowed then
           result:=[RS_A8..RS_A15]
         else
-          result:=[RS_A0..RS_A7];
+          result:=[RS_A0..RS_A11];
       end;
 
 
cpupara.patch (406 bytes)   

Florian

2020-07-09 22:34

administrator   ~0123855

Thanks, applied.

Christo Crause

2020-07-10 08:50

reporter   ~0123863

Thanks!

Issue History

Date Modified Username Field Change
2020-07-08 22:09 Christo Crause New Issue
2020-07-08 22:09 Christo Crause File Added: cpupara.patch
2020-07-09 22:34 Florian Assigned To => Florian
2020-07-09 22:34 Florian Status new => resolved
2020-07-09 22:34 Florian Resolution open => fixed
2020-07-09 22:34 Florian Fixed in Version => 3.3.1
2020-07-09 22:34 Florian Fixed in Revision => 45749
2020-07-09 22:34 Florian FPCTarget => -
2020-07-09 22:34 Florian Note Added: 0123855
2020-07-10 08:50 Christo Crause Status resolved => closed
2020-07-10 08:50 Christo Crause Note Added: 0123863