|
|||||||||||
|
Technical Support Support Resources
Product Information |
C51: Converting IAR Banked Code to KeilInformation in this article applies to:
SYMPTOMWe have a legacy application written for the IAR 8051 Compiler and are converting it to work with the Keil tools. We started by compiling with the Keil compiler but we get the following warning:
for the following pragmas:
CAUSEThese pragmas are used by the IAR compiler to specify that the functions listed are or are not code banking functions. The Keil tools use a completely different method of specifying functions that are code banked. Therefore, the function pragma is not supported by the Keil tools. RESOLUTIONIn Keil, a non_banked function is a function located in the common area. Functions that are banked are located in a code bank (bank 0, bank 1, bank2, ...). You may specify the code bank (or common area) for your programs on a module-by-module basis or on a function-by-function basis or both. To resolve the issue you have, remove the #pragma function statements from your program. Then, use either the linker command-line options or the project options in µVision to specify which modules/functions reside in which banks. SEE ALSOLast Reviewed: Thursday, February 25, 2021 | ||||||||||
|
|||||||||||
Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.