<?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: BLX label - illegal on ARM Cortex-M4 in CodeWarrior for MCU</title>
    <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402518#M11565</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've created a short example to reproduce the problem.&lt;/P&gt;&lt;P&gt;I'm using CW for MCU v10.6 with all updated installed.&lt;/P&gt;&lt;P&gt;I've disassembled the code at .c and at .elf level.&lt;/P&gt;&lt;P&gt;I got the following&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from main.c file:&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;float test;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0:&amp;nbsp;&amp;nbsp;&amp;nbsp; b580&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; push&amp;nbsp;&amp;nbsp;&amp;nbsp; {r7, lr}&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter++;&lt;/P&gt;&lt;P&gt;&amp;nbsp; c:&amp;nbsp;&amp;nbsp;&amp;nbsp; 687b&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp; e:&amp;nbsp;&amp;nbsp;&amp;nbsp; f103 0301&amp;nbsp;&amp;nbsp;&amp;nbsp; add.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r3, #1&lt;/P&gt;&lt;P&gt;&amp;nbsp; 12:&amp;nbsp;&amp;nbsp;&amp;nbsp; 607b&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; str&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test=counter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; 14:&amp;nbsp;&amp;nbsp;&amp;nbsp; 6878&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp; 16:&amp;nbsp;&amp;nbsp;&amp;nbsp; f7ff fffe&amp;nbsp;&amp;nbsp;&amp;nbsp; bl&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;lt;__aeabi_i2f&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16: R_ARM_THM_CALL&amp;nbsp;&amp;nbsp;&amp;nbsp; __aeabi_i2f&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1a:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4602&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, r0&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1c:&amp;nbsp;&amp;nbsp;&amp;nbsp; f240 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movw&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1c: R_ARM_THM_MOVW_ABS_NC&amp;nbsp;&amp;nbsp;&amp;nbsp; test&lt;/P&gt;&lt;P&gt;&amp;nbsp; 20:&amp;nbsp;&amp;nbsp;&amp;nbsp; f2c0 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movt&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20: R_ARM_THM_MOVT_ABS&amp;nbsp;&amp;nbsp;&amp;nbsp; test&lt;/P&gt;&lt;P&gt;&amp;nbsp; 24:&amp;nbsp;&amp;nbsp;&amp;nbsp; 601a&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; str&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, [r3, #0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from test.elf file:&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;for(;;) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;counter++;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1fffc49c:&amp;nbsp;&amp;nbsp;&amp;nbsp; 687b&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc49e:&amp;nbsp;&amp;nbsp;&amp;nbsp; f103 0301&amp;nbsp;&amp;nbsp;&amp;nbsp; add.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r3, #1&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4a2:&amp;nbsp;&amp;nbsp;&amp;nbsp; 607b&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;str&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;test=counter;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1fffc4a4:&amp;nbsp;&amp;nbsp;&amp;nbsp; 6878&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc4a6:&amp;nbsp;&amp;nbsp;&amp;nbsp; f7ff ff43&amp;nbsp;&amp;nbsp;&amp;nbsp; bl&amp;nbsp;&amp;nbsp;&amp;nbsp; 1fffc330 &amp;lt;__aeabi_i2f&amp;gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4aa:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4602&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;mov&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, r0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc4ac:&amp;nbsp;&amp;nbsp;&amp;nbsp; f240 031c&amp;nbsp;&amp;nbsp;&amp;nbsp; movw&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #28&lt;/P&gt;&lt;P&gt;1fffc4b0:&amp;nbsp;&amp;nbsp;&amp;nbsp; f2c2 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movt&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #8192&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x2000&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4b4:&amp;nbsp;&amp;nbsp;&amp;nbsp; 601a&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;str&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, [r3, #0]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;1fffc330 &amp;lt;__aeabi_i2f&amp;gt;:&lt;/P&gt;&lt;P&gt;1fffc330:&amp;nbsp;&amp;nbsp;&amp;nbsp; f010 4300&amp;nbsp;&amp;nbsp;&amp;nbsp; ands.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r0, #2147483648&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x80000000&lt;/P&gt;&lt;P&gt;1fffc334:&amp;nbsp;&amp;nbsp;&amp;nbsp; bf48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; it&amp;nbsp;&amp;nbsp;&amp;nbsp; mi&lt;/P&gt;&lt;P&gt;1fffc336:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4240&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; negmi&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, r0&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Pascal&lt;BR /&gt;Freescale Technical Support&lt;BR /&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>Fri, 29 May 2015 09:26:54 GMT</pubDate>
    <dc:creator>trytohelp</dc:creator>
    <dc:date>2015-05-29T09:26:54Z</dc:date>
    <item>
      <title>BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402517#M11564</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;We are using Code Warrior for the Kinetis K50 family.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Our code is mixed C++ and C.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am getting an illegal instruction trap.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The compiler generates:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; bl&amp;nbsp;&amp;nbsp; __aeabi_i2f&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;to call an int-to-float conversion.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The linker converts it to:&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; blx&amp;nbsp; __aeabi_i2f&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;which is, indeed, illegal on the K50 (ARM Cortex-M4).&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Web searches have proved fruitless.&amp;nbsp; It is probably a library issue somewhere, but I have no idea how to fix it.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Eliminating the floating-point operations completely is the last resort, and I have at this time no way to be certain that the problem won't show up somewhere else.&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Suggestions?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 27 May 2015 22:54:04 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402517#M11564</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-05-27T22:54:04Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402518#M11565</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've created a short example to reproduce the problem.&lt;/P&gt;&lt;P&gt;I'm using CW for MCU v10.6 with all updated installed.&lt;/P&gt;&lt;P&gt;I've disassembled the code at .c and at .elf level.&lt;/P&gt;&lt;P&gt;I got the following&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from main.c file:&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;float test;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;int main(void)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp; 0:&amp;nbsp;&amp;nbsp;&amp;nbsp; b580&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; push&amp;nbsp;&amp;nbsp;&amp;nbsp; {r7, lr}&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; counter++;&lt;/P&gt;&lt;P&gt;&amp;nbsp; c:&amp;nbsp;&amp;nbsp;&amp;nbsp; 687b&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp; e:&amp;nbsp;&amp;nbsp;&amp;nbsp; f103 0301&amp;nbsp;&amp;nbsp;&amp;nbsp; add.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r3, #1&lt;/P&gt;&lt;P&gt;&amp;nbsp; 12:&amp;nbsp;&amp;nbsp;&amp;nbsp; 607b&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; str&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; test=counter;&lt;/P&gt;&lt;P&gt;&amp;nbsp; 14:&amp;nbsp;&amp;nbsp;&amp;nbsp; 6878&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, [r7, #4]&lt;/P&gt;&lt;P&gt;&amp;nbsp; 16:&amp;nbsp;&amp;nbsp;&amp;nbsp; f7ff fffe&amp;nbsp;&amp;nbsp;&amp;nbsp; bl&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 &amp;lt;__aeabi_i2f&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16: R_ARM_THM_CALL&amp;nbsp;&amp;nbsp;&amp;nbsp; __aeabi_i2f&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1a:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4602&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mov&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, r0&lt;/P&gt;&lt;P&gt;&amp;nbsp; 1c:&amp;nbsp;&amp;nbsp;&amp;nbsp; f240 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movw&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1c: R_ARM_THM_MOVW_ABS_NC&amp;nbsp;&amp;nbsp;&amp;nbsp; test&lt;/P&gt;&lt;P&gt;&amp;nbsp; 20:&amp;nbsp;&amp;nbsp;&amp;nbsp; f2c0 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movt&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #0&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20: R_ARM_THM_MOVT_ABS&amp;nbsp;&amp;nbsp;&amp;nbsp; test&lt;/P&gt;&lt;P&gt;&amp;nbsp; 24:&amp;nbsp;&amp;nbsp;&amp;nbsp; 601a&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; str&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, [r3, #0]&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;from test.elf file:&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;for(;;) {&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;counter++;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1fffc49c:&amp;nbsp;&amp;nbsp;&amp;nbsp; 687b&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc49e:&amp;nbsp;&amp;nbsp;&amp;nbsp; f103 0301&amp;nbsp;&amp;nbsp;&amp;nbsp; add.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r3, #1&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4a2:&amp;nbsp;&amp;nbsp;&amp;nbsp; 607b&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;str&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/TD&gt;&lt;TD&gt;test=counter;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1fffc4a4:&amp;nbsp;&amp;nbsp;&amp;nbsp; 6878&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;ldr&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, [r7, #4]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc4a6:&amp;nbsp;&amp;nbsp;&amp;nbsp; f7ff ff43&amp;nbsp;&amp;nbsp;&amp;nbsp; bl&amp;nbsp;&amp;nbsp;&amp;nbsp; 1fffc330 &amp;lt;__aeabi_i2f&amp;gt;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4aa:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4602&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;mov&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, r0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;1fffc4ac:&amp;nbsp;&amp;nbsp;&amp;nbsp; f240 031c&amp;nbsp;&amp;nbsp;&amp;nbsp; movw&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #28&lt;/P&gt;&lt;P&gt;1fffc4b0:&amp;nbsp;&amp;nbsp;&amp;nbsp; f2c2 0300&amp;nbsp;&amp;nbsp;&amp;nbsp; movt&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, #8192&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x2000&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;1fffc4b4:&amp;nbsp;&amp;nbsp;&amp;nbsp; 601a&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;str&amp;nbsp;&amp;nbsp;&amp;nbsp; r2, [r3, #0]&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;1fffc330 &amp;lt;__aeabi_i2f&amp;gt;:&lt;/P&gt;&lt;P&gt;1fffc330:&amp;nbsp;&amp;nbsp;&amp;nbsp; f010 4300&amp;nbsp;&amp;nbsp;&amp;nbsp; ands.w&amp;nbsp;&amp;nbsp;&amp;nbsp; r3, r0, #2147483648&amp;nbsp;&amp;nbsp;&amp;nbsp; ; 0x80000000&lt;/P&gt;&lt;P&gt;1fffc334:&amp;nbsp;&amp;nbsp;&amp;nbsp; bf48&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; it&amp;nbsp;&amp;nbsp;&amp;nbsp; mi&lt;/P&gt;&lt;P&gt;1fffc336:&amp;nbsp;&amp;nbsp;&amp;nbsp; 4240&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; negmi&amp;nbsp;&amp;nbsp;&amp;nbsp; r0, r0&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;+++++++++++++++++++&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Pascal&lt;BR /&gt;Freescale Technical Support&lt;BR /&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>Fri, 29 May 2015 09:26:54 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402518#M11565</guid>
      <dc:creator>trytohelp</dc:creator>
      <dc:date>2015-05-29T09:26:54Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402519#M11566</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Something in your libraries or your project setup is different from something in mine, causing your reconstruct attempt to fail.&amp;nbsp; For some reason, your linker did not make the (erroneous) change of "bl &amp;lt;label&amp;gt;" to "blx &amp;lt;label&amp;gt;".&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;When I look at the .lst file, showing the generated assembly language, I see a "bl __aeabi_i2f", which is correct.&amp;nbsp; When I try to run it, from the final executable, the debugger shows me a "blx __aeabi_i2f".&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Which libraries are you linking, created on what date?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Alternatively, can I recreate the libraries from source code, compiling for ARM Cortex-M4?&amp;nbsp; If so, what is the procedure?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is potentially a showstopper for our project.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 29 May 2015 17:50:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402519#M11566</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-05-29T17:50:10Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402520#M11567</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Attached is the example I used.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Pascal&lt;BR /&gt;Freescale Technical Support&lt;BR /&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, 08 Jun 2015 08:36:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402520#M11567</guid>
      <dc:creator>trytohelp</dc:creator>
      <dc:date>2015-06-08T08:36:48Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402521#M11568</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you.&amp;nbsp; I found something.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your link map shows that you are getting the problematic routines from library &lt;SPAN style="line-height: 1.5;"&gt;e:/freescale/cw_mcu_v10.6/cross_tools/arm-none-eabi-gcc-4_7_3/bin/../lib/gcc/arm-none-eabi/4.7.3/armv7e-m\libgcc.a(_arm_addsubsf3.o)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My link map shows that I am getting it from library c:/freescale/cw mcu v10.6/cross_tools/arm-none-eabi-gcc-4_7_3/bin/../lib/gcc/arm-none-eabi/4.7.3\libgcc.a(_arm_addsubsf3.o)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Your linker is going one layer deeper, to fetch from 4.7.3/armv7e-m/libgcc.a.&amp;nbsp; Mine is fetching from 4.7.3/libgcc.a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;What controls that?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Jun 2015 15:52:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402521#M11568</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-06-08T15:52:26Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402522#M11569</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I renamed the 4.7.3 libraries to something else, then copied the armv7e-m variants in and rebuilt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That fixed the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to know why the incorrect libraries were getting loaded in the first place, but we now at least have a workaround.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Jun 2015 16:26:43 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402522#M11569</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-06-08T16:26:43Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402523#M11570</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi John,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The library is defined in the linker settings&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="pastedImage_0.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/31546i66B7F07C9BDADEBB/image-size/large?v=v2&amp;amp;px=999" role="button" title="pastedImage_0.png" alt="pastedImage_0.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I've created the project via the wizard.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Pascal&lt;BR /&gt;Freescale Technical Support&lt;BR /&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, 08 Jun 2015 18:00:07 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402523#M11570</guid>
      <dc:creator>trytohelp</dc:creator>
      <dc:date>2015-06-08T18:00:07Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402524#M11571</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Picture too small to be readable.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is our understanding that the wizard only knows how to create C projects, and we're doing C++.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 08 Jun 2015 18:09:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402524#M11571</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-06-08T18:09:24Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402525#M11572</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The new dialog&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/9084iD0FFB46727AD0DD1/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;The project wizard allow you to select C++ too.&lt;/P&gt;&lt;P&gt;Now if your project is using Processor Expert only C is available.&lt;/P&gt;&lt;P&gt;Processor Expert is not available in C++&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pascal&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Jun 2015 06:03:32 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402525#M11572</guid>
      <dc:creator>trytohelp</dc:creator>
      <dc:date>2015-06-09T06:03:32Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402526#M11573</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;That's the library path setting I am currently using.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The problem is with libgcc.a.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The linker is pulling libgcc.a from:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c:/Freescale/CW MCU v10.6/Cross_Tools/arm-none-eabi-gcc-4_7_3/lib/gcc/arm-none-eabi/4.7.3&lt;/P&gt;&lt;P&gt;This is the wrong place for an ARM Cortex-M4.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It should be pulling it from:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; c:/Freescale/CW MCU v10.6/Cross_Tools/arm-none-eabi-gcc-4_7_3/lib/gcc/arm-none-eabi/4.7.3/armv7e-m/&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;My libpath settings are essentially identical to yours:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper" image-alt="linkersettings_library.png"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/23321i96062A90E76AA2E1/image-size/large?v=v2&amp;amp;px=999" role="button" title="linkersettings_library.png" alt="linkersettings_library.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Jun 2015 14:11:46 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402526#M11573</guid>
      <dc:creator>johnstrohm</dc:creator>
      <dc:date>2015-06-09T14:11:46Z</dc:date>
    </item>
    <item>
      <title>Re: BLX label - illegal on ARM Cortex-M4</title>
      <link>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402527#M11574</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;John,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;On my MCU V10.6 installation, I've created 2 projects using the wizard.&lt;/P&gt;&lt;P&gt;The projects are running fine on my side - using correct library.&lt;/P&gt;&lt;P&gt;May be there is a problem with your project properties.&lt;/P&gt;&lt;P&gt;Do you used the project wizard too ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Very difficult to know what is the cause of the problem.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Have a great day,&lt;BR /&gt;Pascal&lt;BR /&gt;Freescale Technical Support&lt;BR /&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>Tue, 09 Jun 2015 15:22:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/CodeWarrior-for-MCU/BLX-label-illegal-on-ARM-Cortex-M4/m-p/402527#M11574</guid>
      <dc:creator>trytohelp</dc:creator>
      <dc:date>2015-06-09T15:22:21Z</dc:date>
    </item>
  </channel>
</rss>

