<?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: How can I locate the memcpy funktion in RAM ? in S32 Design Studio</title>
    <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851401#M4243</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lutz,&lt;/P&gt;&lt;P&gt;If you are linking NewLib Nano you should adjust the library name to "libc_nano".&lt;/P&gt;&lt;P&gt;See below the example with two object files - memcpy, memset from Newlib Nano:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;                 &lt;SPAN class="comment token"&gt;/* .text sections (code) */&lt;/SPAN&gt;
    
    &lt;SPAN class="comment token"&gt;/* Exclude file(s) from NewLib libc.a from .text.* section  */&lt;/SPAN&gt;     
     &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;EXCLUDE_FILE &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   

&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;


  &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;AT&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__CODE_ROM&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __CODE_RAM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __code_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;      &lt;SPAN class="comment token"&gt;/* Create a global symbol at code start. */&lt;/SPAN&gt;
    __code_ram_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code_ram&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;             &lt;SPAN class="comment token"&gt;/* Custom section for storing code in RAM */&lt;/SPAN&gt;    
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;    
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   &lt;SPAN class="comment token"&gt;/* add memcpy from the NewLib-nano library here*/&lt;/SPAN&gt; 
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   &lt;SPAN class="comment token"&gt;/* add memset from the NewLib-nano library here*/&lt;/SPAN&gt; 
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;    
    __code_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;        &lt;SPAN class="comment token"&gt;/* Define a global symbol at code end. */&lt;/SPAN&gt;
    __code_ram_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; m_data
    ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;after build I can see this in .map file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code           &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x28&lt;/SPAN&gt; load address &lt;SPAN class="number token"&gt;0x00000844&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __CODE_RAM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __code_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __code_ram_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code_ram&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;o&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memcpy   &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x16&lt;/SPAN&gt; C&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;NXP&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;S32DS_ARM_v2018&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;R1&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;Cross_Tools&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;gcc&lt;SPAN class="number token"&gt;-6.3&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;arm32&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;arm&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;none&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;newlib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;lib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;thumb&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;v7e&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;m\libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;a&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                memcpy
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;o&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memset   &lt;SPAN class="number token"&gt;0x1ffe047a&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x10&lt;/SPAN&gt; C&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;NXP&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;S32DS_ARM_v2018&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;R1&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;Cross_Tools&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;gcc&lt;SPAN class="number token"&gt;-6.3&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;arm32&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;arm&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;none&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;newlib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;lib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;thumb&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;v7e&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;m\libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;a&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe047a&lt;/SPAN&gt;                memset
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;fill&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;         &lt;SPAN class="number token"&gt;0x1ffe048a&lt;/SPAN&gt;        &lt;SPAN class="number token"&gt;0x2&lt;/SPAN&gt; 
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                __code_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                __code_ram_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x0000086c&lt;/SPAN&gt;                __CODE_END &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__CODE_ROM &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__code_end__ &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; __code_start__&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x0000086c&lt;/SPAN&gt;                __CUSTOM_ROM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; __CODE_END
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this solves the problem.&lt;/P&gt;&lt;P&gt;Stan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 18 Mar 2019 09:30:36 GMT</pubDate>
    <dc:creator>stanish</dc:creator>
    <dc:date>2019-03-18T09:30:36Z</dc:date>
    <item>
      <title>How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851398#M4240</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="border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; color: #51626f; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; font-weight: inherit; letter-spacing: normal; orphans: 2; overflow-wrap: break-word; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none currentColor;"&gt;Hello,&lt;/P&gt;&lt;P style="border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; color: #51626f; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; font-weight: inherit; letter-spacing: normal; orphans: 2; overflow-wrap: break-word; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none currentColor;"&gt;I use S32K144 with S32DS 2018.R1.&lt;/P&gt;&lt;P style="border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; color: #51626f; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; font-weight: inherit; letter-spacing: normal; orphans: 2; overflow-wrap: break-word; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none currentColor;"&gt;How can I locate the memcpy&amp;nbsp; function from in the RAM, that this function ist executed from RAM.&lt;/P&gt;&lt;P style="border-image-outset: 0; border-image-repeat: stretch; border-image-slice: 100%; border-image-source: none; border-image-width: 1; color: #51626f; font-family: inherit; font-size: 100%; font-style: inherit; font-variant: normal; font-weight: inherit; letter-spacing: normal; orphans: 2; overflow-wrap: break-word; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; vertical-align: baseline; -webkit-text-stroke-width: 0px; white-space: normal; word-spacing: 0px; padding: 0px; margin: 0px; border: 0px none currentColor;"&gt;My linker file:&lt;/P&gt;&lt;P&gt;*(EXCLUDE_FILE(lib_a-memcpy-stub.o)&amp;nbsp;.text)&lt;/P&gt;&lt;P&gt;…..&lt;/P&gt;&lt;P&gt;&amp;nbsp; .code : AT(__CODE_ROM)&lt;BR /&gt;&amp;nbsp; {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; . = ALIGN(4);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __CODE_RAM = .;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __code_start__ = .;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Create a global symbol at code start. */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; __code_ram_start__ = .;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; *(.code_ram)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /* Custom section for storing code in RAM */&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;*libc_nano.a:lib_a-memcpy-stub.o (.text).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But it doesn't work.&amp;nbsp;&lt;/P&gt;&lt;P&gt;In my map file memcpy is locatet in rom&lt;/P&gt;&lt;DIV&gt;.iplt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00022110&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0&lt;BR /&gt;&amp;nbsp;.iplt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00022110&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x0 c:/nxp/s32ds_arm_v2018.r1/cross_tools/gcc-6.3-arm32-eabi/bin/../lib/gcc/arm-none-eabi/6.3.1/thumb/v7e-m/fpv4-sp/hard/crtbegin.o&lt;/DIV&gt;&lt;DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;.text.memcpy&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x00022110&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x16&lt;BR /&gt;&amp;nbsp;.text.memcpy&amp;nbsp;&amp;nbsp; 0x00022110&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0x16 C:/NXP/S32DS_ARM_v2018.R1/Cross_Tools/gcc-6.3-arm32-eabi/arm-none-eabi/newlib/lib/thumb/v7e-m/fpv4-sp/hard\libc_nano.a(lib_a-memcpy-stub.o)&lt;BR /&gt;&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; 0x00022110&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; memcpy&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 12 Mar 2019 20:54:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851398#M4240</guid>
      <dc:creator>koehlerl</dc:creator>
      <dc:date>2019-03-12T20:54:08Z</dc:date>
    </item>
    <item>
      <title>Re: How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851399#M4241</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Lutz,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for this interesting question.&lt;/P&gt;&lt;P&gt;I'd suggest you to adjust your ld file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;Input section used by &lt;STRONG&gt;EXCLUDE_FILE&amp;nbsp;&lt;/STRONG&gt; shall not interfere the same input section used later in section list (e.g. with *(.text*) input section I deleted from the list below). &lt;STRONG&gt;EXCLUDE_FILE&lt;/STRONG&gt; in the example behaves the same was as *.(text*) rule - it only exclude selected file(s) - but places all the remaining (non-excluded) input data.&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt; &lt;SPAN class="comment token"&gt;/* The program code and other data goes into internal flash */&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;                 &lt;SPAN class="comment token"&gt;/* .text sections (code) */&lt;/SPAN&gt;

     &lt;SPAN class="comment token"&gt;/* Exclude file(s) from NewLib libc.a from .text.* section  */&lt;/SPAN&gt;     
     &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;EXCLUDE_FILE &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   
 
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;rodata&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;               &lt;SPAN class="comment token"&gt;/* .rodata sections (constants, strings, etc.) */&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;rodata&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;              &lt;SPAN class="comment token"&gt;/* .rodata* sections (constants, strings, etc.) */&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;glue_7&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;               &lt;SPAN class="comment token"&gt;/* glue arm to thumb code */&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;glue_7t&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;              &lt;SPAN class="comment token"&gt;/* glue thumb to arm code */&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;eh_frame&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
    KEEP &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;init&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
    KEEP &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;fini&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; m_text‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;2. Adjust the rule that places a memcpy object file into Code RAM section. Please be aware that the&amp;nbsp; compiler option -ffunction-section was used to generate the libraries and it creates a special section for each function (e.g. memcpy is placed into .text.memcpy input section). Therefore your rule has to be adjusted. (see also &lt;A href="https://community.nxp.com/thread/469123" rel="nofollow noopener noreferrer" target="_blank"&gt;how to allocate an input section from library file to a custom output section?&lt;/A&gt;&amp;nbsp;)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier, monospace;"&gt;&lt;STRONG&gt;&amp;nbsp; &amp;nbsp; *libc.a:lib_a-memcpy-stub.o (.text*)&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;  &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;AT&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__CODE_ROM&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __CODE_RAM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __code_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;      &lt;SPAN class="comment token"&gt;/* Create a global symbol at code start. */&lt;/SPAN&gt;
    __code_ram_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;

    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code_ram&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;             &lt;SPAN class="comment token"&gt;/* Custom section for storing code in RAM */&lt;/SPAN&gt;

    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   &lt;SPAN class="comment token"&gt;/* add memcpy from the NewLib library here*/&lt;/SPAN&gt; 
  
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __code_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;        &lt;SPAN class="comment token"&gt;/* Define a global symbol at code end. */&lt;/SPAN&gt;
    __code_ram_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; m_data‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now If you build the project and check the map file you should see memcpy&amp;nbsp; is placed into custom .code_ram section in memory:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-none line-numbers"&gt;&lt;CODE&gt;.code           0x1fff881c       0x18 load address 0x00000d90
                0x1fff881c                . = ALIGN (0x4)
                0x1fff881c                __CODE_RAM = .
                0x1fff881c                __code_start__ = .
                0x1fff881c                __code_ram_start__ = .
 *(.code_ram)
 *libc.a:lib_a-memcpy-stub.o(.text*)
 .text.memcpy   0x1fff881c       0x16 C:/NXP/S32DS_ARM_v2018.R1/Cross_Tools/gcc-6.3-arm32-eabi/arm-none-eabi/newlib/lib/thumb/v7e-m\libc.a(lib_a-memcpy-stub.o)
                0x1fff881c                memcpy
                0x1fff8834                . = ALIGN (0x4)
 *fill*         0x1fff8832        0x2 
                0x1fff8834                __code_end__ = .
                0x1fff8834                __code_ram_end__ = .
                0x00000da8                __CODE_END = (__CODE_ROM + (__code_end__ - __code_start__))
                0x00000da8                __CUSTOM_ROM = __CODE_END&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H4 id="toc-hId-1427979613"&gt;Note:&lt;/H4&gt;&lt;P&gt;Please be aware that if you are placing a function into RAM (e.g. to improve speed performance) make sure you are adding also sub-functions called by that function (typically located in a different object file) otherwise the performance gain may not be as high as expected.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H4 id="toc-hId--1124177348"&gt;Note 2:&lt;/H4&gt;&lt;P&gt;I've noticed I used NewLib instead of NewLib nano in the example. Anyway the approach is the same regardless of specific library used.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope it helps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Stan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 14 Mar 2019 14:47:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851399#M4241</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2019-03-14T14:47:23Z</dc:date>
    </item>
    <item>
      <title>Re: How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851400#M4242</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Stan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;it doesn't work to locate the memcpy into the ram.&lt;/P&gt;&lt;P&gt;I tested it with functions from S32K14xMMCLIB. It works fine. But with memcpy it doesnt work.&lt;/P&gt;&lt;P&gt;In the mapfile I have this entries:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;.text.memcpy    0x00017648       0x16&lt;/P&gt;&lt;P&gt;.text.memcpy   0x00017648       0x16 C:/NXP/S32DS_ARM_v2018.R1/Cross_Tools/gcc-6.3-arm32-eabi/arm-none-eabi/newlib/lib/thumb/v7e-m/fpv4-sp/hard\libc.a(lib_a-memcpy-stub.o)&lt;/P&gt;&lt;P&gt;                0x00017648                memcpy&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*S32K14x_AMMCLIB.a:GDFLIB_FilterMA_c.o(.text)&lt;/P&gt;&lt;P&gt;.text          0x1fffaf08      0x11c C:/NXP/S32DS_ARM_v2018.R1/S32DS/S32K14x_AMMCLIB_v1.1.15/lib/s32ds_arm32/S32K14x_AMMCLIB.a(GDFLIB_FilterMA_c.o)&lt;/P&gt;&lt;P&gt;                0x1fffaf08                GDFLIB_FilterMAInit_F32&lt;/P&gt;&lt;P&gt;                0x1fffaf10                GDFLIB_FilterMASetState_F32&lt;/P&gt;&lt;P&gt;                0x1fffaf50                GDFLIB_FilterMA_F32&lt;/P&gt;&lt;P&gt;                0x1fffaf88                GDFLIB_FilterMAInit_F16&lt;/P&gt;&lt;P&gt;                0x1fffaf90                GDFLIB_FilterMASetState_F16&lt;/P&gt;&lt;P&gt;                0x1fffafd4                GDFLIB_FilterMA_F16&lt;/P&gt;&lt;P&gt;                0x1fffafec                GDFLIB_FilterMAInit_FLT&lt;/P&gt;&lt;P&gt;                0x1fffaff4                GDFLIB_FilterMASetState_FLT&lt;/P&gt;&lt;P&gt;                0x1fffb004                GDFLIB_FilterMA_FLT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;fill&lt;/STRONG&gt;         0x1fffb024        0x4&lt;/P&gt;&lt;P&gt; .text.__stub   0x1fffb028      0x118 linker stubs&lt;/P&gt;&lt;P&gt;*S32K14x_AMMCLIB.a:GFLIB_Sqrt_c.o(.text)&lt;/P&gt;&lt;P&gt;*libc.a:lib_a-memcpy-stub.o(.text)&lt;/P&gt;&lt;P&gt;                0x1fffb140                . = ALIGN (0x4)&lt;/P&gt;&lt;P&gt;                0x1fffb140                __code_end__ = .&lt;/P&gt;&lt;P&gt;                0x1fffb140                __code_ram_end__ = .&lt;/P&gt;&lt;P&gt;                0x0001a3a8                __CODE_END = (__CODE_ROM + (__code_end__ - __code_start__))&lt;/P&gt;&lt;P&gt;                0x0001a3a8                __CUSTOM_ROM = __CODE_END&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I debug, the memcpy code on 0x00017648 is ececued.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;BR Lutz&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Von: stanish &lt;/P&gt;&lt;P&gt;Gesendet: Donnerstag, 14. März 2019 15:49&lt;/P&gt;&lt;P&gt;An: Köhler, Lutz &amp;lt;lutz.koehler@acd-antriebstechnik.de&amp;gt;&lt;/P&gt;&lt;P&gt;Betreff: Re:  - Re: How can I locate the memcpy funktion in RAM ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NXP Community &amp;lt;https://community.freescale.com/resources/statics/1000/35400-NXP-Community-Email-banner-600x75.jpg&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Re: How can I locate the memcpy funktion in RAM ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reply from Stanislav Sliva&amp;lt;https://community.nxp.com/people/stanish?et=watches.email.thread&amp;gt; in S32 Design Studio - View the full discussion&amp;lt;https://community.nxp.com/message/1125081?commentID=1125081&amp;amp;et=watches.email.thread#comment-1125081&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Mar 2019 06:38:19 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851400#M4242</guid>
      <dc:creator>koehlerl</dc:creator>
      <dc:date>2019-03-18T06:38:19Z</dc:date>
    </item>
    <item>
      <title>Re: How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851401#M4243</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Lutz,&lt;/P&gt;&lt;P&gt;If you are linking NewLib Nano you should adjust the library name to "libc_nano".&lt;/P&gt;&lt;P&gt;See below the example with two object files - memcpy, memset from Newlib Nano:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;                 &lt;SPAN class="comment token"&gt;/* .text sections (code) */&lt;/SPAN&gt;
    
    &lt;SPAN class="comment token"&gt;/* Exclude file(s) from NewLib libc.a from .text.* section  */&lt;/SPAN&gt;     
     &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;EXCLUDE_FILE &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   

&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;


  &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code &lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;AT&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__CODE_ROM&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;{&lt;/SPAN&gt;
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __CODE_RAM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    __code_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;      &lt;SPAN class="comment token"&gt;/* Create a global symbol at code start. */&lt;/SPAN&gt;
    __code_ram_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code_ram&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;             &lt;SPAN class="comment token"&gt;/* Custom section for storing code in RAM */&lt;/SPAN&gt;    
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;    
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   &lt;SPAN class="comment token"&gt;/* add memcpy from the NewLib-nano library here*/&lt;/SPAN&gt; 
    &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;   &lt;SPAN class="comment token"&gt;/* add memset from the NewLib-nano library here*/&lt;/SPAN&gt; 
    &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="token function"&gt;ALIGN&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;    
    __code_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;        &lt;SPAN class="comment token"&gt;/* Define a global symbol at code end. */&lt;/SPAN&gt;
    __code_ram_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;;&lt;/SPAN&gt;
  &lt;SPAN class="punctuation token"&gt;}&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;&amp;gt;&lt;/SPAN&gt; m_data
    ‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;after build I can see this in .map file:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE class="language-c line-numbers"&gt;&lt;CODE&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code           &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x28&lt;/SPAN&gt; load address &lt;SPAN class="number token"&gt;0x00000844&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __CODE_RAM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __code_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                __code_ram_start__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;code_ram&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;o&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memcpy   &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x16&lt;/SPAN&gt; C&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;NXP&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;S32DS_ARM_v2018&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;R1&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;Cross_Tools&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;gcc&lt;SPAN class="number token"&gt;-6.3&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;arm32&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;arm&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;none&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;newlib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;lib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;thumb&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;v7e&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;m\libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;a&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memcpy&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;stub&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe0464&lt;/SPAN&gt;                memcpy
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;a&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;o&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;text&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;memset   &lt;SPAN class="number token"&gt;0x1ffe047a&lt;/SPAN&gt;       &lt;SPAN class="number token"&gt;0x10&lt;/SPAN&gt; C&lt;SPAN class="punctuation token"&gt;:&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;NXP&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;S32DS_ARM_v2018&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;R1&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;Cross_Tools&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;gcc&lt;SPAN class="number token"&gt;-6.3&lt;/SPAN&gt;&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;arm32&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;arm&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;none&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;eabi&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;newlib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;lib&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;thumb&lt;SPAN class="operator token"&gt;/&lt;/SPAN&gt;v7e&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;m\libc_nano&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;&lt;SPAN class="token function"&gt;a&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;lib_a&lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt;memset&lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;o&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe047a&lt;/SPAN&gt;                memset
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt; &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; ALIGN &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;&lt;SPAN class="number token"&gt;0x4&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
 &lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;fill&lt;SPAN class="operator token"&gt;*&lt;/SPAN&gt;         &lt;SPAN class="number token"&gt;0x1ffe048a&lt;/SPAN&gt;        &lt;SPAN class="number token"&gt;0x2&lt;/SPAN&gt; 
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                __code_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x1ffe048c&lt;/SPAN&gt;                __code_ram_end__ &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;.&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x0000086c&lt;/SPAN&gt;                __CODE_END &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__CODE_ROM &lt;SPAN class="operator token"&gt;+&lt;/SPAN&gt; &lt;SPAN class="punctuation token"&gt;(&lt;/SPAN&gt;__code_end__ &lt;SPAN class="operator token"&gt;-&lt;/SPAN&gt; __code_start__&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;&lt;SPAN class="punctuation token"&gt;)&lt;/SPAN&gt;
                &lt;SPAN class="number token"&gt;0x0000086c&lt;/SPAN&gt;                __CUSTOM_ROM &lt;SPAN class="operator token"&gt;=&lt;/SPAN&gt; __CODE_END
‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍&lt;SPAN class="line-numbers-rows"&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;SPAN&gt;‍&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this solves the problem.&lt;/P&gt;&lt;P&gt;Stan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Mar 2019 09:30:36 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851401#M4243</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2019-03-18T09:30:36Z</dc:date>
    </item>
    <item>
      <title>Re: How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851402#M4244</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello Stan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I tested it with libc and libc_nano. But in both cases I have the same behavior. The memcpy isn’t located in the RAM.&lt;/P&gt;&lt;P&gt;I don’t understand why. With the S32K14xMMCLIB works it.&lt;/P&gt;&lt;P&gt;Dependents it from the  project settings ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lutz&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Von: stanish &lt;/P&gt;&lt;P&gt;Gesendet: Montag, 18. März 2019 10:31&lt;/P&gt;&lt;P&gt;An: Köhler, Lutz &amp;lt;lutz.koehler@acd-antriebstechnik.de&amp;gt;&lt;/P&gt;&lt;P&gt;Betreff: Re:  - Re: How can I locate the memcpy funktion in RAM ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NXP Community &amp;lt;https://community.freescale.com/resources/statics/1000/35400-NXP-Community-Email-banner-600x75.jpg&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Re: How can I locate the memcpy funktion in RAM ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reply from Stanislav Sliva&amp;lt;https://community.nxp.com/people/stanish?et=watches.email.thread&amp;gt; in S32 Design Studio - View the full discussion&amp;lt;https://community.nxp.com/message/1126015?commentID=1126015&amp;amp;et=watches.email.thread#comment-1126015&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Mar 2019 10:25:44 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851402#M4244</guid>
      <dc:creator>koehlerl</dc:creator>
      <dc:date>2019-03-18T10:25:44Z</dc:date>
    </item>
    <item>
      <title>Re: How can I locate the memcpy funktion in RAM ?</title>
      <link>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851403#M4245</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Lutz,&lt;/P&gt;&lt;P&gt;I suspect you are linking with a different lib selected.&lt;/P&gt;&lt;P&gt;The linker script file must match with the project settings:&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/78132iEE7EFE313CBD7BF5/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;&lt;/P&gt;&lt;P&gt;Please make sure you are using newlib_nano library in Target Processor settings + you refers to&amp;nbsp; newlib_nano in .ld file.&lt;/P&gt;&lt;P&gt;Attached is an example project that I used.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Stan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 18 Mar 2019 11:59:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-Design-Studio/How-can-I-locate-the-memcpy-funktion-in-RAM/m-p/851403#M4245</guid>
      <dc:creator>stanish</dc:creator>
      <dc:date>2019-03-18T11:59:15Z</dc:date>
    </item>
  </channel>
</rss>

