<?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>i.MX RT Crossover MCUsのトピックFunction assembly code analysis</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2036633#M33348</link>
    <description>&lt;P&gt;Can anyone comment on the prologue and epilogue of following code, particularly the content of r7 when the routine returns?&lt;/P&gt;&lt;LI-CODE lang="c"&gt;{
   0:	b480      	push	{r7}
   2:	af00      	add	r7, sp, #0

    if ((ANADIG_MISC-&amp;gt;MISC_DIFPROG &amp;amp; ANADIG_MISC_MISC_DIFPROG_CHIPID(0x10U)) != 0U)
   4:	4b0b      	ldr	r3, [pc, #44]	@ (34 &amp;lt;RamBased_ROM_API_Init+0x34&amp;gt;)
   6:	f8d3 3800 	ldr.w	r3, [r3, #2048]	@ 0x800
   a:	f003 0310 	and.w	r3, r3, #16
   e:	2b00      	cmp	r3, #0
  10:	d005      	beq.n	1e &amp;lt;RamBased_ROM_API_Init+0x1e&amp;gt;
    {
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0021001cU);
  12:	4b09      	ldr	r3, [pc, #36]	@ (38 &amp;lt;RamBased_ROM_API_Init+0x38&amp;gt;)
  14:	681b      	ldr	r3, [r3, #0]
  16:	461a      	mov	r2, r3
  18:	4b08      	ldr	r3, [pc, #32]	@ (3c &amp;lt;RamBased_ROM_API_Init+0x3c&amp;gt;)
  1a:	601a      	str	r2, [r3, #0]
    }
    else
    {
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0020001cU);
    }
}
  1c:	e004      	b.n	28 &amp;lt;RamBased_ROM_API_Init+0x28&amp;gt;
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0020001cU);
  1e:	4b08      	ldr	r3, [pc, #32]	@ (40 &amp;lt;RamBased_ROM_API_Init+0x40&amp;gt;)
  20:	681b      	ldr	r3, [r3, #0]
  22:	461a      	mov	r2, r3
  24:	4b05      	ldr	r3, [pc, #20]	@ (3c &amp;lt;RamBased_ROM_API_Init+0x3c&amp;gt;)
  26:	601a      	str	r2, [r3, #0]
}

  28:	bf00      	nop
  2a:	46bd      	mov	sp, r7
  2c:	f85d 7b04 	ldr.w	r7, [sp], #4
  30:	4770      	bx	lr
  32:	bf00      	nop

  34:	40c84000 	.word	0x40c84000
  38:	0021001c 	.word	0x0021001c
  3c:	80981070 	.word	0x80981070
  40:	0020001c 	.word	0x0020001c&lt;/LI-CODE&gt;&lt;P&gt;Thanks very much!&lt;/P&gt;</description>
    <pubDate>Fri, 31 Jan 2025 15:20:29 GMT</pubDate>
    <dc:creator>Littell</dc:creator>
    <dc:date>2025-01-31T15:20:29Z</dc:date>
    <item>
      <title>Function assembly code analysis</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2036633#M33348</link>
      <description>&lt;P&gt;Can anyone comment on the prologue and epilogue of following code, particularly the content of r7 when the routine returns?&lt;/P&gt;&lt;LI-CODE lang="c"&gt;{
   0:	b480      	push	{r7}
   2:	af00      	add	r7, sp, #0

    if ((ANADIG_MISC-&amp;gt;MISC_DIFPROG &amp;amp; ANADIG_MISC_MISC_DIFPROG_CHIPID(0x10U)) != 0U)
   4:	4b0b      	ldr	r3, [pc, #44]	@ (34 &amp;lt;RamBased_ROM_API_Init+0x34&amp;gt;)
   6:	f8d3 3800 	ldr.w	r3, [r3, #2048]	@ 0x800
   a:	f003 0310 	and.w	r3, r3, #16
   e:	2b00      	cmp	r3, #0
  10:	d005      	beq.n	1e &amp;lt;RamBased_ROM_API_Init+0x1e&amp;gt;
    {
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0021001cU);
  12:	4b09      	ldr	r3, [pc, #36]	@ (38 &amp;lt;RamBased_ROM_API_Init+0x38&amp;gt;)
  14:	681b      	ldr	r3, [r3, #0]
  16:	461a      	mov	r2, r3
  18:	4b08      	ldr	r3, [pc, #32]	@ (3c &amp;lt;RamBased_ROM_API_Init+0x3c&amp;gt;)
  1a:	601a      	str	r2, [r3, #0]
    }
    else
    {
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0020001cU);
    }
}
  1c:	e004      	b.n	28 &amp;lt;RamBased_ROM_API_Init+0x28&amp;gt;
        g_bootloaderTree = ((bootloader_api_entry_t *)*(uint32_t *)0x0020001cU);
  1e:	4b08      	ldr	r3, [pc, #32]	@ (40 &amp;lt;RamBased_ROM_API_Init+0x40&amp;gt;)
  20:	681b      	ldr	r3, [r3, #0]
  22:	461a      	mov	r2, r3
  24:	4b05      	ldr	r3, [pc, #20]	@ (3c &amp;lt;RamBased_ROM_API_Init+0x3c&amp;gt;)
  26:	601a      	str	r2, [r3, #0]
}

  28:	bf00      	nop
  2a:	46bd      	mov	sp, r7
  2c:	f85d 7b04 	ldr.w	r7, [sp], #4
  30:	4770      	bx	lr
  32:	bf00      	nop

  34:	40c84000 	.word	0x40c84000
  38:	0021001c 	.word	0x0021001c
  3c:	80981070 	.word	0x80981070
  40:	0020001c 	.word	0x0020001c&lt;/LI-CODE&gt;&lt;P&gt;Thanks very much!&lt;/P&gt;</description>
      <pubDate>Fri, 31 Jan 2025 15:20:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2036633#M33348</guid>
      <dc:creator>Littell</dc:creator>
      <dc:date>2025-01-31T15:20:29Z</dc:date>
    </item>
    <item>
      <title>Re: Function assembly code analysis</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2037879#M33368</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/234959"&gt;@Littell&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Could you help me with the following information?&lt;/P&gt;
&lt;P&gt;Which MCU are you using?&lt;/P&gt;
&lt;P&gt;Could you explain what is the expected behavior of the application?&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2025 17:10:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2037879#M33368</guid>
      <dc:creator>Pablo_Ramos</dc:creator>
      <dc:date>2025-02-04T17:10:07Z</dc:date>
    </item>
    <item>
      <title>Re: Function assembly code analysis</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2037916#M33370</link>
      <description>&lt;P&gt;It's an RT1176 (CM7) and the expected behavior isn't relevant - I'm asking for an analysis of the assembly code, in particular the contents of r7 when the function returns.&lt;/P&gt;</description>
      <pubDate>Tue, 04 Feb 2025 18:18:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2037916#M33370</guid>
      <dc:creator>Littell</dc:creator>
      <dc:date>2025-02-04T18:18:59Z</dc:date>
    </item>
    <item>
      <title>Re: Function assembly code analysis</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2040078#M33402</link>
      <description>&lt;P&gt;So you guys are completely stumped by a tiny bit of assembly?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 07 Feb 2025 15:57:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2040078#M33402</guid>
      <dc:creator>Littell</dc:creator>
      <dc:date>2025-02-07T15:57:29Z</dc:date>
    </item>
    <item>
      <title>Re: Function assembly code analysis</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2040134#M33404</link>
      <description>&lt;P&gt;My apologies for the late reply.&lt;/P&gt;
&lt;P&gt;I understand may not be able to share more information about the application, however, custom code and assembly code is out of the scope of support through this channel.&lt;BR /&gt;If you need help with any ARM related instructions in particular, I would recommend contacting ARM support. For NXP products related questions you may also contact your NXP Distributor for help.&lt;/P&gt;
&lt;P&gt;Please let me know if there’s anything else that I can do for you.&lt;BR /&gt;Regards,&lt;/P&gt;</description>
      <pubDate>Fri, 07 Feb 2025 17:51:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Function-assembly-code-analysis/m-p/2040134#M33404</guid>
      <dc:creator>Pablo_Ramos</dc:creator>
      <dc:date>2025-02-07T17:51:26Z</dc:date>
    </item>
  </channel>
</rss>

