Placing the section which holds __ramfunc functions

Technical Note 82175

Targets:
ARM

Component:
Linker

Updated:
11/18/2010 3:34 PM

Introduction

This Technical Note sorts out an issue in version 5.xx of IAR Embedded Workbench for ARM.

Background

The issue is that the documentation is unclear on this topic.

Information

The __ramfunc functions are placed in the section .textrw
The placement can be done as in this example. In the .icf file do:

define symbol __RAM_func_start__  = 0x00200000;
define symbol __RAM_func_end__ = 0x00207FFF;
define region RAM_func_region = mem:[from __RAM_func_start__ to __RAM_func_end__];

define block RamCode {section .textrw};
place in RAM_func_region { block RamCode };
initialize by copy {readwrite};

Note that...

...this Technical Note do not apply to IAR Embedded Workbench ARM versions 5.10 and 5.11, where the IAR ILINK Linker worked in another way.

All product names are trademarks or registered trademarks of their respective owners

Related Tech Notes

© IAR Systems 1995-2016 - All rights reserved.