How to avoid gcc compilation error after upgrade from BMEP584040 to BMEP585040
In CE15.3, a GCC compilation error may occur after changing the CPU in the application from BMEP584040 to BMEP585040 or higher. This issue arises when a few not recommended instructions are used in specific sections.
The compiler utilized in BMEP585040 and higher models differs from the one used for BMEP584040 references and lower. This imposes limitations in ST sections, particularly when 'JMP' instructions are used in an infinite loop (e.g., with labels).
To prevent potential GCC issues, it is strongly advised to replace these 'JMP' instructions in infinite loops with 'While' instructions.
See the following example:
The following code uses label and JMP instructions:

Can be replaced by this one, doing the same thing, and able to be built by the BMEP585040 compiler:
The compiler utilized in BMEP585040 and higher models differs from the one used for BMEP584040 references and lower. This imposes limitations in ST sections, particularly when 'JMP' instructions are used in an infinite loop (e.g., with labels).
To prevent potential GCC issues, it is strongly advised to replace these 'JMP' instructions in infinite loops with 'While' instructions.
See the following example:
The following code uses label and JMP instructions:
Can be replaced by this one, doing the same thing, and able to be built by the BMEP585040 compiler:
Publicerad för: Schneider Electric Sverige
Behöver du hjälp?
Produktväljare
Hitta snabbt och enkelt rätt produkter och tillbehör för dina ändamål.
Begär en offert
Ställ din fråga online så kontaktar vi dig.
Här köper du
Hitta enkelt närmaste Schneider Electric-distributör på din ort.
Hjälpcenter
Hitta alla supportresurser som du behöver på ett ställe.