<?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>topic Re: Stack Overflow and UnderFlow monitoring in S12 / MagniV Microcontrollers</title>
    <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048841#M17171</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&amp;nbsp;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/lama"&gt;lama&lt;/A&gt;‌,&lt;/P&gt;&lt;P&gt;Thank you for your reply.&lt;/P&gt;&lt;P&gt;I understood.&lt;/P&gt;&lt;P&gt;Is there any document relevant to the suggestion 1a.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 31 Jul 2020 11:18:25 GMT</pubDate>
    <dc:creator>pratibhasurabhi</dc:creator>
    <dc:date>2020-07-31T11:18:25Z</dc:date>
    <item>
      <title>Stack Overflow and UnderFlow monitoring</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048839#M17169</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello All,&lt;/P&gt;&lt;P&gt;I am working with S12 ZVML MCU. I want to implement the stack counter undeflow/overflow check.&lt;/P&gt;&lt;P&gt;The S12Z safety manual recommends to implement a periodic stack over/underflow check.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_1.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/109094i1765B91EB750B842/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_1.png" alt="pastedImage_1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;My query is whether a simple check of comparing the stack counter against a user defined threshold counter value will suffice or any further additions are required.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Jul 2020 06:12:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048839#M17169</guid>
      <dc:creator>pratibhasurabhi</dc:creator>
      <dc:date>2020-07-31T06:12:00Z</dc:date>
    </item>
    <item>
      <title>Re: Stack Overflow and UnderFlow monitoring</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048840#M17170</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;There are two things to talk about.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;1) Usually the stack should be correctly precalculated to be sure how the application is working and how much space it requires for the stack. Then you can use two approaches.&lt;/SPAN&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;a) fill the part of stack by means of FILL command in the prm file which you expect will be newer used by the application. (The least addresses space of the stack). Then you can check two things in a regular periods, the SP value for current status and the “FILLed” part of stack to check whether we have not overflow calculated stack size between two stack address checking events. &lt;/SPAN&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;This is the part I am able to say from my position. The second part provides next possibility to get more info from special team.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;2) You can post any safety related questions to the special community space. The community is monitored by experts in safety area.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;&lt;A href="https://community.nxp.com/groups/safeassure-nda" target="test_blank"&gt;https://community.nxp.com/groups/safeassure-nda&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;You need to have an NDA to get there first. If you do not have it you have to ask for it by inserting a new case where you ask for it.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;Please read this document.&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin: 2.0pt 0cm 2.0pt 0cm;"&gt;&lt;SPAN style="font-size: 12.0pt;"&gt;&lt;A href="https://community.nxp.com/docs/DOC-335524" target="test_blank"&gt;https://community.nxp.com/docs/DOC-335524&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Ladislav&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Jul 2020 09:00:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048840#M17170</guid>
      <dc:creator>lama</dc:creator>
      <dc:date>2020-07-31T09:00:49Z</dc:date>
    </item>
    <item>
      <title>Re: Stack Overflow and UnderFlow monitoring</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048841#M17171</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi&amp;nbsp;&lt;A class="jx-jive-macro-user" href="https://community.nxp.com/people/lama"&gt;lama&lt;/A&gt;‌,&lt;/P&gt;&lt;P&gt;Thank you for your reply.&lt;/P&gt;&lt;P&gt;I understood.&lt;/P&gt;&lt;P&gt;Is there any document relevant to the suggestion 1a.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 31 Jul 2020 11:18:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048841#M17171</guid>
      <dc:creator>pratibhasurabhi</dc:creator>
      <dc:date>2020-07-31T11:18:25Z</dc:date>
    </item>
    <item>
      <title>Re: Stack Overflow and UnderFlow monitoring</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048842#M17172</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Pratibha,&lt;/P&gt;&lt;P&gt;The filing the stack by known pattern and check how much from it was rewritten by application code is common approach for debug testing whether your stack size is adequal. Typically, we reset MCU by debugger into Startup() code (prior stack initialization), fill stack by debugger and let code run. After some time, we stop CPU and watch size of used stack.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, if I remmember correctly, the stack is only part of RAM where linker will ignore the FILL command. So, Lama's advice may help only partialy.&lt;/P&gt;&lt;P&gt;Anyway, the stack is used from top and&amp;nbsp;by default located at begining of RAM. So, you may simply write some pattern directly at address 0x1000 (RAM start) during MCU init and periodically check it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example:&amp;nbsp;&lt;/P&gt;&lt;P&gt;volatile unsigned int stack_overflow @0x1000&amp;nbsp; =0x5AA5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Note:&amp;nbsp;&lt;SPAN style="font-size: 11.0pt;"&gt;Be aware! The default CW project has disabled memory overlapping warnings.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;See&amp;nbsp;&lt;A href="https://community.nxp.com/docs/DOC-334387"&gt;https://community.nxp.com/docs/DOC-334387&lt;/A&gt;&amp;nbsp; for more details regarding variable allocation in CW.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I hope it helps you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;Radek&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Aug 2020 20:16:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048842#M17172</guid>
      <dc:creator>RadekS</dc:creator>
      <dc:date>2020-08-06T20:16:17Z</dc:date>
    </item>
    <item>
      <title>Re: Stack Overflow and UnderFlow monitoring</title>
      <link>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048843#M17173</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;an example of prm file. See modifications in bold.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* This is a linker parameter file for the MC9S12ZVLA128 */&lt;BR /&gt;NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SEGMENTS&amp;nbsp; /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* Register space&amp;nbsp; */&lt;BR /&gt;/*&amp;nbsp;&amp;nbsp;&amp;nbsp; IO_SEG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = PAGED&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x000000 TO&amp;nbsp;&amp;nbsp; 0x000FFF; intentionally not defined */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* RAM */&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp; 0x001000 TO 0x002FFF; intentionally removed&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_WRITE&amp;nbsp; 0x001000 TO 0x002DFF;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MY_STACK_RAM&amp;nbsp; = NO_INIT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x002F00 TO 0x002FFF;&amp;nbsp;&amp;nbsp;&amp;nbsp; // expected stack size&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MY_CHECK_STACK_RAM&amp;nbsp; = READ_WRITE&amp;nbsp; 0x002E00 TO 0x002EFF FILL 0xFF;&amp;nbsp; // intentionally used for stack underflow check (select proper size)&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;/* EEPROM */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; EEPROM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0x100000 TO 0x1007FF;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/* non-paged FLASHs */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp; 0xFE0000 TO 0xFFFDFF;&lt;BR /&gt;&amp;nbsp;/*&amp;nbsp;&amp;nbsp; VECTORS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFFFE00 TO&amp;nbsp;&amp;nbsp; 0xFFFFFF; intentionally not defined: used for VECTOR commands below */&lt;BR /&gt;&amp;nbsp;&amp;nbsp; //OSVECTORS&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; = READ_ONLY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0xFFFE10 TO&amp;nbsp;&amp;nbsp; 0xFFFFFF;&amp;nbsp;&amp;nbsp; /* OSEK interrupt vectors (use your vector.o) */&lt;BR /&gt;END&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PLACEMENT /* here all predefined and user segments are placed into the SEGMENTS defined above. */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _PRESTART,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Used in HIWARE format: jump to _Startup at the code start */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STARTUP,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* startup data structures */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ROM_VAR,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* constant variables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; STRINGS,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* string literals */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VIRTUAL_TABLE_SEGMENT,&amp;nbsp; /* C++ virtual table segment */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //.ostext,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* OSEK */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NON_BANKED,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* runtime routines which must not be banked */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_ROM,&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; COPY&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; ROM;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //.stackstart,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* eventually used for OSEK kernel awareness: Main-Stack Start */&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;//&amp;nbsp; intentionally removed&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSTACK,&amp;nbsp; /* allocate stack first to avoid overwriting variables on overflow */&amp;nbsp; // !!!!!!!!!!!!&lt;/STRONG&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //.stackend,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* eventually used for OSEK kernel awareness: Main-Stack End */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; DEFAULT_RAM&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; RAM;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; SSTACK&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; MY_STACK_RAM;&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MY_CHECK_STACK_RAM&amp;nbsp; INTO&amp;nbsp; MY_CHECK_STACK_RAM;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; //.vectors&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTO&amp;nbsp; OSVECTORS; /* OSEK */&lt;BR /&gt;END&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENTRIES /* keep the following unreferenced variables */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* OSEK: always allocate the vector table and all dependent objects */&lt;BR /&gt;&amp;nbsp; //_vectab OsBuildNumber _OsOrtiStackStart _OsOrtiStart&lt;BR /&gt;END&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;//STACKSIZE 0x100&lt;/STRONG&gt;&lt;BR /&gt;&lt;STRONG&gt;STACKTOP&amp;nbsp; 0x2fff&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // redefined for required stack size defined in the SEGMENTS section &lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;VECTOR 0 _Startup /* reset vector: this is the default entry point for a C/C++ application. */&lt;BR /&gt;//VECTOR 0 Entry&amp;nbsp; /* reset vector: this is the default entry point for an Assembly application. */&lt;BR /&gt;//INIT Entry&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* for assembly applications: that this is as well the initialization entry point */&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Result of the modifications is.....RAM 0x2e00~0x2eff is not used by application for variables and it is filled by patter 0xff at the start of the code automatically. RAM 0x2f00~0x2fff is used for STACK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_5.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/109753iBA512D92F2C22DDA/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_5.png" alt="pastedImage_5.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Ladislav&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Aug 2020 07:45:18 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S12-MagniV-Microcontrollers/Stack-Overflow-and-UnderFlow-monitoring/m-p/1048843#M17173</guid>
      <dc:creator>lama</dc:creator>
      <dc:date>2020-08-07T07:45:18Z</dc:date>
    </item>
  </channel>
</rss>

