欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: Warning[25]: Label 'xxx' is defined pubweak in a section implicitly declared ... [打印本頁]

作者: piaolin    時間: 2015-9-30 12:59
標題: Warning[25]: Label 'xxx' is defined pubweak in a section implicitly declared ...
IAR編譯警告Warning25解決辦法STM32

在使用IAR7.7編譯工程的時候,出現(xiàn)一大堆Warning[25]: Label 'xxx' is defined pubweak in a section implicitly declared root 的警告,點進去是指到啟動文件startup_stm32f10x_xd.s里面的,這個問題有網(wǎng)友說是IAR在早期的版本里面使用了core_cm3文件,而在6以后高版本IAR中就不需要了。解決的辦法IAR官方也給出了方案了(文章末尾):

具體做法就是在啟動文件里面startup_stm32f10x_xd.s(雙擊警告可以直接打開),在SECTION .text:CODE:REORDER(1)后面添加一個NOROOT,改成下面這個樣子,注意那個數(shù)字是在NOROOT后面的。每一個SECTION都添加后保存,再次編譯就不會出錯了。

  1. Reset_Handler  
  2.         LDR     R0, =SystemInit  
  3.         BLX     R0  
  4.         LDR     R0, =__iar_program_start  
  5.         BX      R0  
  6.           
  7.         PUBWEAK NMI_Handler  
  8.         SECTION .text:CODE:REORDER:NOROOT(1)  


Warning[25]: Label 'xxxxx' is defined pubweak in a section implicitly declared root

EW targets: ARM, STM8
EW component: Assembler
Keywords: assembly
Last update: January 12, 2015

Problem
After upgrading to...
EWARM 7.10.1
EWSTM8 2.10.1
...the Warning[25] is issued during assembly of a file that assembled without warning on earlier version of the Embedded Workbench.


Solution
To avoid the warning, add ":NOROOT" to the "SECTION" control directive.
Add the ":NOROOT" to the left of the ()-part of the line.

      PUBWEAK NMI_Handler
      SECTION .text:CODE:REORDER:NOROOT(1)
  NMI_Handler


Background
The assembler is issuing Warning[25] for a deprecated assembler construction.

The deprecated assembler source construction looks like this:

      PUBWEAK NMI_Handler
      SECTION .text:CODE:REORDER(1)
  NMI_Handler


Details
The assembler control directive of "SECTION" consists of:

SECTION section :type [:flag] [(align)]

The change is only to be made among the flag items. I.e. don't change the"SECTION" , "section" , ":type" nor the "[(align)]" parts of the line. (For example if the alignment is expressed as (2) then keep it at (2). (The (2) stands for an alignment of 4 bytes, as the (2) is the power of two to which the address should be aligned.))

The "[:flag]"-part can have these flags:
ROOT (the default mode) or NOROOT
and
REORDER or NOREORDER (the default mode)
Where now the Warning from the Assembler shows that the "explicit noroot", due to the directive "PUBWEAK", mismatch the default mode, which gives an "implied root"
So the "explicit noroot", from "PUBWEAK", should be matched with the flag"NOROOT".

The details for the assembler control directive of "SECTION" can be found in the chapter "Section control directives" in the "IAR Assembler™ Reference Guide."

All product names are trademarks or registered trademarks of their respective owners.


作者: 文龍    時間: 2018-10-23 13:20
學習了




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1