lnk.icf 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. /*###ICF### Section handled by ICF editor, don't touch! ****/
  2. /*-Editor annotation file-*/
  3. /* IcfEditorFile="$TOOLKIT_DIR$\config\ide\IcfEditor\cortex_v2_1.xml" */
  4. /*-Specials-*/
  5. define symbol __ICFEDIT_intvec_start__ = 0x00004000;
  6. /*-Memory Regions-*/
  7. define symbol __ICFEDIT_region_IROM1_start__ = 0x0;
  8. define symbol __ICFEDIT_region_IROM1_end__ = 0x0;
  9. define symbol __ICFEDIT_region_IROM2_start__ = 0x0;
  10. define symbol __ICFEDIT_region_IROM2_end__ = 0x0;
  11. define symbol __ICFEDIT_region_EROM1_start__ = 0x0;
  12. define symbol __ICFEDIT_region_EROM1_end__ = 0x0;
  13. define symbol __ICFEDIT_region_EROM2_start__ = 0x0;
  14. define symbol __ICFEDIT_region_EROM2_end__ = 0x0;
  15. define symbol __ICFEDIT_region_EROM3_start__ = 0x0;
  16. define symbol __ICFEDIT_region_EROM3_end__ = 0x0;
  17. define symbol __ICFEDIT_region_IRAM1_start__ = 0x00004000;
  18. define symbol __ICFEDIT_region_IRAM1_end__ = 0x007FFFFF;
  19. define symbol __ICFEDIT_region_IRAM2_start__ = 0x20000000;
  20. define symbol __ICFEDIT_region_IRAM2_end__ = 0x207FFFFF;
  21. define symbol __ICFEDIT_region_ERAM1_start__ = 0x0;
  22. define symbol __ICFEDIT_region_ERAM1_end__ = 0x0;
  23. define symbol __ICFEDIT_region_ERAM2_start__ = 0x0;
  24. define symbol __ICFEDIT_region_ERAM2_end__ = 0x0;
  25. define symbol __ICFEDIT_region_ERAM3_start__ = 0x0;
  26. define symbol __ICFEDIT_region_ERAM3_end__ = 0x0;
  27. /*-Sizes-*/
  28. define symbol __ICFEDIT_size_cstack__ = 0x400;
  29. define symbol __ICFEDIT_size_proc_s_stack__ = 0x0;
  30. define symbol __ICFEDIT_size_main_ns_stack__ = 0x0;
  31. define symbol __ICFEDIT_size_proc_ns_stack__ = 0x0;
  32. define symbol __ICFEDIT_size_heap__ = 0x800;
  33. /**** End of ICF editor section. ###ICF###*/
  34. define memory mem with size = 4G;
  35. define region IRAM_region = mem:[from __ICFEDIT_region_IRAM1_start__ to __ICFEDIT_region_IRAM1_end__]
  36. | mem:[from __ICFEDIT_region_IRAM2_start__ to __ICFEDIT_region_IRAM2_end__];
  37. define region ERAM_region = mem:[from __ICFEDIT_region_ERAM1_start__ to __ICFEDIT_region_ERAM1_end__]
  38. | mem:[from __ICFEDIT_region_ERAM2_start__ to __ICFEDIT_region_ERAM2_end__]
  39. | mem:[from __ICFEDIT_region_ERAM3_start__ to __ICFEDIT_region_ERAM3_end__];
  40. define block CSTACK with alignment = 8, size = __ICFEDIT_size_cstack__ { };
  41. define block HEAP with alignment = 8, size = __ICFEDIT_size_heap__ { };
  42. do not initialize { section .noinit };
  43. initialize by copy { readwrite };
  44. if (isdefinedsymbol(__USE_DLIB_PERTHREAD))
  45. {
  46. // Required in a multi-threaded application
  47. initialize by copy with packing = none { section __DLIB_PERTHREAD };
  48. }
  49. place at address mem:__ICFEDIT_intvec_start__ { readonly section .intvec };
  50. place in IRAM_region { readonly };
  51. place in IRAM_region { readwrite, block CSTACK, block HEAP };