<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>CodeWarrior Development ToolsのトピックHCS08 PRM Symbols</title>
    <link>https://community.nxp.com/t5/CodeWarrior-Development-Tools/HCS08-PRM-Symbols/m-p/389363#M2330</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I’m trying to create some code that will check the stack utilization. &lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But, to do this I need a variable or symbol that I can reference in my code to tell me the stack size which is defined in the PRM file. I had a trick that worked in the LCF file with the Kinetis family, but that trick isn’t working here in the PRM file of the HCS08 chip.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone know how to accomplish this?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 20 Feb 2015 14:28:05 GMT</pubDate>
    <dc:creator>ignisuti_</dc:creator>
    <dc:date>2015-02-20T14:28:05Z</dc:date>
    <item>
      <title>HCS08 PRM Symbols</title>
      <link>https://community.nxp.com/t5/CodeWarrior-Development-Tools/HCS08-PRM-Symbols/m-p/389363#M2330</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I’m trying to create some code that will check the stack utilization. &lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But, to do this I need a variable or symbol that I can reference in my code to tell me the stack size which is defined in the PRM file. I had a trick that worked in the LCF file with the Kinetis family, but that trick isn’t working here in the PRM file of the HCS08 chip.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone know how to accomplish this?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 20 Feb 2015 14:28:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-Development-Tools/HCS08-PRM-Symbols/m-p/389363#M2330</guid>
      <dc:creator>ignisuti_</dc:creator>
      <dc:date>2015-02-20T14:28:05Z</dc:date>
    </item>
    <item>
      <title>Re: HCS08 PRM Symbols</title>
      <link>https://community.nxp.com/t5/CodeWarrior-Development-Tools/HCS08-PRM-Symbols/m-p/389364#M2331</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Joe,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;we can use tree prefixes &lt;CODE class="cCode"&gt;__SEG_SIZE_&lt;/CODE&gt; to define the size of the stack segment. in order to use it for stack segment. the stack section SSTACK must be defined in a fixed address section.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H2 class="pHA_HeadA"&gt;Linker-Defined Objects &lt;/H2&gt;&lt;P&gt;&lt;A name="wp968939" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;The linker supports defining special objects to get the address and size of sections at link time. Objects to be defined by the linker must have as a special prefix one of the strings below and must not be defined by the application at all. &lt;/P&gt;&lt;TABLE border="0" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1" valign="top" width="65"&gt;&lt;STRONG&gt;NOTE&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD colspan="1" rowspan="1" valign="top"&gt;&lt;A name="wp981567" shape="rect"&gt;&lt;/A&gt; &lt;P class="pN_Note"&gt;&amp;nbsp; Because the linker defines C variables automatically when their size is known, the usual variables declaration fails for this feature. For an &lt;CODE class="cCode"&gt;extern int __SEG_START_SSTACK;&lt;/CODE&gt;, the linker allocates the size of an &lt;CODE class="cCode"&gt;int&lt;/CODE&gt;, and does not define the object as address of the stack. Use the following syntax so that the compiler/linker has no size for the object: &lt;CODE class="cCode"&gt;extern int __SEG_START_SSTACK[];&lt;/CODE&gt;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;A name="wp981569" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;Usual applications of this feature are the initialization of the stack pointer and retrieving the last address of an application to compute a code checksum at runtime. &lt;/P&gt;&lt;P&gt;&lt;A name="wp968943" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;The object name is built by using a special prefix and then the name of the symbol. &lt;/P&gt;&lt;P&gt;&lt;A name="wp968944" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;The following tree prefixes are supported: &lt;/P&gt;&lt;P&gt;&lt;A name="wp968946" shape="rect"&gt;&lt;/A&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;CODE class="cCode"&gt;__SEG_START_&lt;/CODE&gt; : start address of the segment &lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;A name="wp968948" shape="rect"&gt;&lt;/A&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;CODE class="cCode"&gt;__SEG_END_&lt;/CODE&gt; : end address of the segment &lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;P&gt;&lt;A name="wp968950" shape="rect"&gt;&lt;/A&gt;&lt;/P&gt;&lt;UL&gt;&lt;UL&gt;&lt;LI&gt;&lt;CODE class="cCode"&gt;__SEG_SIZE_&lt;/CODE&gt; : size of the segment &lt;/LI&gt;&lt;/UL&gt;&lt;/UL&gt;&lt;TABLE border="0" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1" valign="top" width="65"&gt;&lt;STRONG&gt;NOTE&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD colspan="1" rowspan="1" valign="top"&gt;&lt;A name="wp968951" shape="rect"&gt;&lt;/A&gt; &lt;P class="pN_Note"&gt;&amp;nbsp; The &lt;CODE class="cCode"&gt;__SEG_END_&lt;/CODE&gt; end address is the address of the first byte behind the named segment.&amp;nbsp; &lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;A name="wp968952" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;The linker assumes the remaining text after the prefix to be the segment name. If the linker does not find such a segment, it issues a warning and takes 0 as the address of this object. &lt;/P&gt;&lt;TABLE border="0" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1" valign="top" width="65"&gt;&lt;STRONG&gt;NOTE&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD colspan="1" rowspan="1" valign="top"&gt;&lt;A name="wp968953" shape="rect"&gt;&lt;/A&gt; &lt;P class="pN_Note"&gt;&amp;nbsp; There is no warning issued for predefined segments like &lt;CODE class="cCode"&gt;SSTACK&lt;/CODE&gt; or &lt;CODE class="cCode"&gt;OVERLAP&lt;/CODE&gt;, even if these segments are empty and not explicitly allocated. The warning is only issued for user-defined segments.&amp;nbsp; &lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;A name="wp976126" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;Because identifiers in C must not contain a period in their name, the Freescale format aliases can be used for the special ELF names. Few of them are &lt;CODE class="cCode"&gt;SSTACK&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.stack&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;DEFAULT_RAM&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.data&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;DEFAULT_ROM&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.text&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;COPY&lt;/CODE&gt; instead of .&lt;CODE class="cCode"&gt;copy&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;ROM_VAR&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.rodata&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;STRINGS&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.rodata1&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;STARTUP&lt;/CODE&gt; instead of&lt;CODE class="cCode"&gt;.startData&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;PRESTART&lt;/CODE&gt; instead of &lt;CODE class="cCode"&gt;.init &lt;/CODE&gt;, &lt;CODE class="cCode"&gt;_OVERLAP&lt;/CODE&gt; instead of .&lt;CODE class="cCode"&gt;overlap&lt;/CODE&gt;, &lt;CODE class="cCode"&gt;_OVERLAP2&lt;/CODE&gt; instead of .&lt;CODE class="cCode"&gt;overlap2&lt;/CODE&gt;. Also, &lt;CODE class="cCode"&gt;__DOT__&lt;/CODE&gt; can be prefixed for objects whose names start with period character. &lt;/P&gt;&lt;P&gt;&lt;A name="wp976134" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pB_Body"&gt;For example, &lt;CODE class="cCode"&gt;__SEG_START___DOT__common&lt;/CODE&gt; can be used to get start address of .&lt;CODE class="cCode"&gt;common&lt;/CODE&gt; section. &lt;/P&gt;&lt;P&gt;&lt;A name="wp973528" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLC_ListingCaption" style="text-indent: -72pt; font-weight: bold; margin-left: 72pt;"&gt;Listing 3.46 C Source Code &lt;/P&gt;&lt;HR /&gt;&lt;P&gt;&lt;A name="wp968958" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLF_ListingFirst" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_START_REF(a) __SEG_START_ ## a &lt;/P&gt;&lt;P&gt;&lt;A name="wp968960" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_END_REF(a) __SEG_END_ ## a &lt;/P&gt;&lt;P&gt;&lt;A name="wp968962" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_SIZE_REF(a) __SEG_SIZE_ ## a &lt;/P&gt;&lt;P&gt;&lt;A name="wp968965" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_START_DEF(a) extern char __SEG_START_REF(a) [] &lt;/P&gt;&lt;P&gt;&lt;A name="wp968967" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_END_DEF(a) extern char __SEG_END_REF( a) [] &lt;/P&gt;&lt;P&gt;&lt;A name="wp968969" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;#define __SEG_SIZE_DEF(a) extern char __SEG_SIZE_REF( a) [] &lt;/P&gt;&lt;P&gt;&lt;A name="wp968971" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;/* To use this feature, first define the symbols to be used: */ &lt;/P&gt;&lt;P&gt;&lt;A name="wp968972" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; __SEG_START_DEF(SSTACK); // start of stack &lt;/P&gt;&lt;P&gt;&lt;A name="wp968973" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; __SEG_END_DEF(SSTACK); // end of stack &lt;/P&gt;&lt;P&gt;&lt;A name="wp968974" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; __SEG_SIZE_DEF(SSTACK); // size of stack &lt;/P&gt;&lt;P&gt;&lt;A name="wp968976" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;/* Then use the new symbols with the _REF macros: */ &lt;/P&gt;&lt;P&gt;&lt;A name="wp968977" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;int error; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968978" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;void main(void) { &lt;/P&gt;&lt;P&gt;&lt;A name="wp968979" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; char* stackBottom= (char*)__SEG_START_REF(SSTACK); &lt;/P&gt;&lt;P&gt;&lt;A name="wp968980" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; char* stackTop = (char*)__SEG_END_REF(SSTACK); &lt;/P&gt;&lt;P&gt;&lt;A name="wp968981" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; int stackSize= (int)__SEG_SIZE_REF(SSTACK); &lt;/P&gt;&lt;P&gt;&lt;A name="wp968982" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; error=0; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968983" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; if (stackBottom+stackSize != stackTop) { // top is bottom + size &lt;/P&gt;&lt;P&gt;&lt;A name="wp968984" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; error=1; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968985" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; } &lt;/P&gt;&lt;P&gt;&lt;A name="wp968986" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; for (;;); /* wait here */ &lt;/P&gt;&lt;P&gt;&lt;A name="wp968987" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLE_ListingEnd" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;} &lt;/P&gt;&lt;HR /&gt;&lt;P&gt;&lt;A name="wp968988" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLC_ListingCaption" style="text-indent: -72pt; font-weight: bold; margin-left: 72pt;"&gt;Listing 3.47 .prm File &lt;/P&gt;&lt;HR /&gt;&lt;P&gt;&lt;A name="wp968989" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLF_ListingFirst" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;LINK example.abs &lt;/P&gt;&lt;P&gt;&lt;A name="wp968990" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; NAMES example.o END &lt;/P&gt;&lt;P&gt;&lt;A name="wp968991" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;SECTIONS &lt;/P&gt;&lt;P&gt;&lt;A name="wp968992" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; MY_RAM = READ_WRITE 0x0800 TO 0x0FFF; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968993" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; MY_ROM = READ_ONLY 0x8000 TO 0xEFFF; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968994" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; MY_STACK = NO_INIT 0x400 TO 0x4ff; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968995" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;END &lt;/P&gt;&lt;P&gt;&lt;A name="wp968996" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;PLACEMENT &lt;/P&gt;&lt;P&gt;&lt;A name="wp968997" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; DEFAULT_ROM INTO MY_ROM; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968998" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; DEFAULT_RAM INTO MY_RAM; &lt;/P&gt;&lt;P&gt;&lt;A name="wp968999" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;&amp;nbsp; SSTACK INTO MY_STACK; &lt;/P&gt;&lt;P&gt;&lt;A name="wp969000" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;END &lt;/P&gt;&lt;P&gt;&lt;A name="wp969001" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLE_ListingEnd" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;INIT main &lt;/P&gt;&lt;HR /&gt;&lt;P&gt;&lt;A name="wp969002" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLC_ListingCaption" style="text-indent: -72pt; font-weight: bold; margin-left: 72pt;"&gt;Listing 3.48 Linker-Defined Symbols &lt;/P&gt;&lt;HR /&gt;&lt;P&gt;&lt;A name="wp969003" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLF_ListingFirst" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;__SEG_START_SSTACK 0x400 &lt;/P&gt;&lt;P&gt;&lt;A name="wp969004" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLN_Lisiting_Next" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;__SEG_END_SSTACK 0x500 &lt;/P&gt;&lt;P&gt;&lt;A name="wp969005" shape="rect"&gt;&lt;/A&gt; &lt;/P&gt;&lt;P class="pLE_ListingEnd" style="text-indent: 0pt; font-family: Courier; font-size: 9pt;"&gt;__SEG_SIZE_SSTACK 0x100 &lt;/P&gt;&lt;HR /&gt;&lt;TABLE border="0" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1" valign="top" width="65"&gt;&lt;STRONG&gt;NOTE&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD colspan="1" rowspan="1" valign="top"&gt;&lt;A name="wp969006" shape="rect"&gt;&lt;/A&gt; &lt;P class="pN_Note"&gt;&amp;nbsp; To use the same source code with other linkers or old linkers, define the symbols in a separate module for them.&amp;nbsp; &lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE border="0" width="100%"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD colspan="1" rowspan="1" valign="top" width="65"&gt;&lt;STRONG&gt;NOTE&lt;/STRONG&gt;&lt;/TD&gt;&lt;TD colspan="1" rowspan="1" valign="top"&gt;&lt;A name="wp978432" shape="rect"&gt;&lt;/A&gt; &lt;P class="pN_Note"&gt;&amp;nbsp; In C, you must use the address as value, and not any value stored in the variable. So in the previous example, &lt;CODE class="cCode"&gt;(int)__SEG_SIZE_REF(SSTACK)&lt;/CODE&gt; was used to get the size of the stack segment and not a C expression like &lt;CODE class="cCode"&gt;__SEG_SIZE_REF(SSTACK)[0]&lt;/CODE&gt;.&amp;nbsp; &lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;HR /&gt;&lt;TABLE align="right" border="0" cellpadding="0" cellspacing="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD align="right" colspan="1" rowspan="1"&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE align="right" border="0" cellpadding="0" cellspacing="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD align="right" colspan="1" rowspan="1"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Zhang Jun&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 02 Mar 2015 06:54:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-Development-Tools/HCS08-PRM-Symbols/m-p/389364#M2331</guid>
      <dc:creator>ZhangJennie</dc:creator>
      <dc:date>2015-03-02T06:54:34Z</dc:date>
    </item>
  </channel>
</rss>

