精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Keil切換到Armclang編譯器,到底強在哪里?

開發 前端
ARM Compiler 5(及更早版本)使用 armcc 編譯器。而AC6(ARM Compiler 6) 用 armclang 替換了 armcc,因此是一個新的編譯器。七年前就有人問了這樣的問題。

[[427278]]

大家好,我是小麥,上次寫過一篇文章 《Keil 編譯太慢怎么辦?教你一招,提速10倍 》,減少了中間文件的生成,確實把編譯速度提高了很多,其實沒有從根本上解決問題,有大佬提出用直接上AC6。

于是我就切換到AC6上嘗試了一下,效果還是不錯的,我就分享一下,感興趣的小伙伴們可以看一下,希望對你有所幫助。

AC6有何不同?

ARM Compiler 5(及更早版本)使用 armcc 編譯器。而AC6(ARM Compiler 6) 用 armclang 替換了 armcc,因此是一個新的編譯器。七年前就有人問了這樣的問題。

AC6和AC5具體有哪些差異呢?

參考鏈接:https://developer.arm.com/documentation/100068/0612/migrating-from-arm-compiler-5-to-arm-compiler-6/migration-overview

Arm Compiler 6 基于現代 LLVM 編譯器框架。Arm Compiler 5 不是基于 LLVM 編譯器框架。因此,將您的項目和源文件從 Arm Compiler 5 遷移到 Arm Compiler 6 ,我們需要注意幾點:

  • 調用編譯器時命令行選項的差異。
  • 遵守語言標準的差異。
  • 編譯器特定關鍵字、屬性和編譯指示的差異。
  • 編譯器優化和診斷行為的差異。

下面是AC6和AC5的工具鏈差異:

工具鏈差異

從這里我們可以看到,出了C編譯器和預處理器不同以外,其他基本上都是相同的。

除了工具鏈的差異,優化也有差異,還有一些默認的差異,包括編譯選項,生成的固件命后綴不同等等,詳細可以參考上述的鏈接。至于強不強,用了才知道嘛。

Keil中切換編譯器

在Keil MDK 5.27中,我們打開項目選項,就可以切換編譯器了,這里包括了AC5和AC6,具體如下圖所示;

為了測試,我用CubeMX生成了一個STM32F103CB基于HAL庫的Keil MDK工程,使用AC5編譯器進行構建;

總共耗時 10 秒;

后面我切換成AC6編譯器,進行重新構建;

總共耗時 5 秒;

如果單純基于HAL庫,沒有加入其他第三方庫的話,直接在項目選項中的編譯器選項中,選擇AC5和AC6就可以實現無縫切換,這是因為在CMSIS中已經幫你做好了兼容性的處理,在cmsis_compiler.h中,這里的條件編譯選項,我們可以發現已經通過判斷不同的編譯器版本,而包含了不同的頭文件,分別是對應armcc和armclag的;如下圖所示;

項目已經根據系統進行了選擇;

  1. #elif defined (__ARMCC_VERSION) && (__ARMCC_VERSION >= 6010050) 
  2.   #include "cmsis_armclang.h" 

判斷當前__ARMCC_VERSION的版本號,然后在包含cmsis_armclang.h頭文件,這個文件中就已經幫我們做好了AC6所需要的兼容性修改。參考官方的文檔“apnt_298,Migrate ARM Compiler 5 to ARM Compiler 6 MDK Tutorial”,可以知道在C語言部分需要做以下的修改:

當然了,一些涉及到很底層的操作,需要C和匯編混合編程的地方,也需要進行修改,這里在文檔中也有類似的說明;

參考鏈接:https://gcc.gnu.org/onlinedocs/gcc/Using-Assembly-Language-with-C.html#Using-Assembly-Language-with-C

添加FreeRTOS

通過ST官方的CubeMX可以非常方便地在項目中添加FreeRTOS。

不過通過這個軟件進行添加RTOS的話,它默認使用的是ARMCC VERSION 5,所以,我直接切換成ARMCC VERSION 6的時候,進行編譯就出現了115個Errors。

查看了錯誤的源頭,主要錯誤都在port.c和portmacro.h這兩個文件中,自己動手移植過FreeRTOS的同學應該知道,一般適配自己的硬件平臺,所要做的移植工作,都會放到這個兩個文件中;

我查看了錯誤,基本上是C編譯器語法,還有C和匯編混合編程語法不兼容所造成的問題;

從圖中可以知道,__forceinline和__asm{ }在AC6中都是不兼容的。

下面是來自文檔apnt_298對于匯編語法的兼容性修改;

當然,我們可以根據文檔將不兼容的部分都修改過來,不過這里需要對ARM匯編有較好的掌握。不過FreeRTOS已經有對AC6有較好的支持了。這里下載FreeRTOS的源碼,需要和前面的項目中所使用的FreeRTOS版本保持一致。

在源碼中找到了相應文件,提示讓我們使用GCC-ports;

在GCC的路徑下找到ARM_CM3,這里包含了我們移植所需要的兩個文件,port.c和portmacro.h;

只要把這兩個文件拷貝到項目中,替換原來的文件即可;

重新構建rebulid,可以看到構建成功,耗時也很少;

總結

 

本文參考了官方的文檔,簡單介紹了AC5和AC6的異同,并在Keil MDK環境下進行測試,添加了FreeRTOS,要從AC5移植到AC6則需要參考文檔Migrate ARM Compiler 5 to ARM Compiler 6 MDK Tutorial,這里面解釋地非常詳細。

 

責任編輯:武曉燕 來源: 小麥大叔
相關推薦

2021-12-15 06:58:28

RedisEhCache緩存

2021-02-26 07:17:47

MySQLMariaDB

2025-10-29 00:00:00

光通信AI人工智能

2024-04-10 08:15:17

模型語言模型GPT

2017-06-22 16:18:58

IBM光譜存儲軟件定義存儲

2014-01-07 13:54:40

Hadoop日志

2019-05-22 10:38:00

5G芯片中興

2023-01-09 08:32:00

編譯器虛擬機操作系統

2012-09-13 14:11:07

Windows Ser微軟云平臺

2021-10-08 14:43:24

WiFi 5WiFi 6遠程

2017-11-30 14:14:53

2015-06-30 14:33:52

物聯網

2020-08-06 09:08:51

開發谷歌微軟

2023-06-27 17:30:13

數字化

2017-03-16 14:31:11

2010-01-21 09:11:38

C++編譯器

2010-01-18 10:34:21

C++編譯器

2010-03-23 11:17:16

Python 動態編譯

2013-03-29 10:02:37

編譯器語言編譯開發

2017-03-20 18:01:55

編譯器匯編
點贊
收藏

51CTO技術棧公眾號

日本不卡中文字幕| 日韩免费一级| 中文字幕国产一区| 亚洲影视九九影院在线观看| 国产一级性生活| 国产中文精品久高清在线不| 欧美精品一二三四| 免费看又黄又无码的网站| 成年午夜在线| 国产精品91一区二区| 日韩av电影免费观看高清| 精品无码久久久久成人漫画| 色综合久久中文| 4438x亚洲最大成人网| 女人和拘做爰正片视频| 久久久久久久久免费视频| av一区二区不卡| 91久久精品久久国产性色也91| 亚洲最大免费| 泷泽萝拉在线播放| 不卡一区视频| 91传媒视频在线播放| 亚洲精品乱码久久久久久蜜桃91| 欧美一区二区三区黄片| 久久se这里有精品| 日韩美女视频免费看| 久久久久久欧美精品se一二三四| 第四色成人网| 亚洲欧美在线x视频| 国模大尺度视频| 国产精品第一国产精品| 欧美三级xxx| 日本中文字幕在线视频观看| 国产淫片在线观看| 日本一区二区视频在线观看| 看高清中日韩色视频| 成人av无码一区二区三区| 麻豆精品视频在线观看视频| 日本人成精品视频在线| 日韩黄色三级视频| 激情综合激情| 久久精品国产久精国产思思| www成人啪啪18软件| 九九久久婷婷| 日韩精品亚洲元码| 精品少妇人妻av一区二区三区| 成人久久精品| 91精品综合久久久久久| 成人日韩在线视频| 成人在线视频观看| 欧美天天综合网| 亚洲不卡视频在线| 99蜜月精品久久91| 欧美吞精做爰啪啪高潮| 天堂一区在线观看| 欧美视频免费看| 欧美日韩国产天堂| 中文字幕色网站| 麻豆国产一区| 精品国产乱码久久久久久影片| 妖精视频在线观看| 精品综合久久88少妇激情| 亚洲成人免费在线视频| 精品1卡二卡三卡四卡老狼| 成人台湾亚洲精品一区二区| 欧美成人一区二区三区在线观看 | 亚洲精品美女在线观看| 亚洲午夜久久久久久久久| 九九热hot精品视频在线播放| 亚洲精品理论电影| 高潮毛片无遮挡| 欧美限制电影| 日韩中文字幕在线| 中日韩一级黄色片| 欧美另类女人| 69久久夜色精品国产69乱青草| 亚欧视频在线观看| 久久久久国产精品一区二区| 国产精品永久免费在线| 国产伦精品一区二区三区免.费| 国产综合色精品一区二区三区| 91色琪琪电影亚洲精品久久| 亚洲精品一区二区三区四区| 91丨九色丨国产丨porny| 日本一区视频在线播放| 黄色国产网站在线播放| 亚洲一区二区精品3399| 成熟老妇女视频| 欧美日韩破处视频| 欧美精品一区二区三区在线播放| 日韩人妻无码一区二区三区| 日韩成人精品一区| 久久久久久久久久久免费| 日本久久综合网| 国产精品456| 茄子视频成人在线观看| 亚洲精品天堂| 在线中文字幕一区二区| 九九久久久久久| 日韩成人动漫在线观看| 久久亚洲国产精品| 麻豆成人免费视频| 国产精品99久久久久久久女警| 久草精品电影| av免费网站在线观看| 欧美性猛交xxxx乱大交3| 日本视频精品一区| 亚洲成人第一区| 日本一区二区三区四区| 97久久天天综合色天天综合色hd| 日韩欧美国产另类| 丰满白嫩尤物一区二区| 亚洲国产一区二区精品视频 | 中文有码久久| 九色91在线| 久久亚洲影视婷婷| 久久久亚洲综合网站| 国产三级在线播放| 91福利在线免费观看| 国产一级黄色录像| 是的av在线| 欧美日本高清视频在线观看| 亚洲爆乳无码精品aaa片蜜桃| 成人片在线看| 欧美性视频一区二区三区| 天堂在线精品视频| 日本中文字幕一区二区| 日本道免费精品一区二区三区| 精品国产亚洲在线| 亚洲综合视频1区| 在线视频1区2区| 欧美日韩亚洲精品一区二区三区| 中国黄色片一级| 亚洲调教一区| 欧美成人精品1314www| 日本50路肥熟bbw| 88xx成人永久免费观看| 日韩午夜电影在线观看| 男女爽爽爽视频| 奇米影视888狠狠狠777不卡| 一区二区久久| 国产精品久久久久久久久粉嫩av| 五月婷婷久久久| 日韩精品久久理论片| 中文字幕日韩av| 国内精品卡一卡二卡三| av免费在线不卡| 不卡的av中国片| 亚洲最大成人在线| 自拍偷拍欧美亚洲| 亚洲高清不卡| 欧美在线免费观看视频| 亚洲精品福利视频网站| 国产日韩久久| 亚洲日本韩国在线| 亚洲深夜福利在线观看| 久久天天做天天爱综合色| 久久久亚洲国产天美传媒修理工| av免费观看大全| 99久久精品日本一区二区免费| 美女视频亚洲色图| 亚洲国产一区视频| 国产成人一区二区三区小说 | 欧美成人福利| 色阁综合伊人av| 国产女同91疯狂高潮互磨| 伊人夜夜躁av伊人久久| 国产免费一区二区三区最新6| 亚洲国产综合在线看不卡| 久久www免费人成精品| 成人黄色免费短视频| 在线视频亚洲欧美| 国产女人18毛片18精品| 亚洲一区二区三区激情| 日本黄色网址大全| 免费高清在线视频一区·| 91手机视频在线| 风间由美一区二区av101 | 成人国产一区二区三区| 国语一区二区三区| 国产精品电影在线观看| 国产在线观看免费麻豆| 精品日韩成人av| caoporn国产| 国产精品乱人伦一区二区| 亚洲三级在线视频| 国产视频亚洲| 一区二区免费在线观看| 草草视频在线一区二区| 国产成人精品亚洲精品| 超碰人人在线| 亚洲欧美一区二区三区情侣bbw| 91久久久久久久久久久久| 亚洲一区二区三区影院| 日韩丰满少妇无码内射| 国产精品一卡二卡在线观看| 日韩黄色片视频| 国产精品精品国产一区二区| 激情视频一区二区| 日韩免费大片| 欧美亚洲第一区| 黄色在线播放网站| 亚洲精品小视频在线观看| 91欧美日韩麻豆精品| 精品国产91久久久久久| 美女三级黄色片| 91小视频在线| 自拍一级黄色片| 久久免费黄色| www.成年人视频| 欧美wwwww| 日韩黄色影视| 日韩av影院| 99九九视频| 日韩亚洲国产免费| 国产97在线|日韩| 678在线观看视频| 久久国产一区二区三区| 国内av一区二区三区| 亚洲精品在线一区二区| 国产精品国产av| 欧洲激情一区二区| 国产区在线观看视频| 亚洲在线一区二区三区| 亚洲综合久久av一区二区三区| 久久久久亚洲蜜桃| 日本一区二区在线免费观看| 国产成a人亚洲| 毛片毛片毛片毛| 视频一区欧美精品| 日本三级免费观看| 亚洲人成免费| 成品人视频ww入口| 欧美色图麻豆| 91国在线高清视频| 亚洲一区二区| 永久免费在线看片视频| 日韩电影二区| 亚洲国产欧美日韩| 国产亚洲一卡2卡3卡4卡新区 | h片在线免费| 日韩中文字幕亚洲| 男人在线资源站| www.久久久久久.com| 在线日本中文字幕| 久久精品国产久精国产思思| 黄色在线播放网站| 欧美精品在线看| 欧美日韩经典丝袜| 久久久久成人网| 国模私拍一区二区国模曼安| 97视频在线观看视频免费视频 | 素人av在线| 精品国产美女在线| 国产不卡在线| 欧美贵妇videos办公室| 538在线观看| 欧美在线一级视频| 电影亚洲一区| 国产女人精品视频| 亚洲精品一区二区在线播放∴| 91影视免费在线观看| 美女久久精品| 国产精品.com| 亚洲精品**不卡在线播he| 日本一区二区三区www| 久久密一区二区三区| 国产人妻人伦精品| 亚洲高清自拍| 免费大片在线观看| 麻豆精品视频在线观看| 成人在线短视频| 99久久精品国产一区| 国产呦小j女精品视频| 国产免费久久精品| 538任你躁在线精品视频网站| 亚洲国产成人精品视频| 国产一级精品视频| 欧美日本在线播放| 成人毛片视频免费看| 日韩精品在线免费播放| 日本亚洲精品| 久久青草精品视频免费观看| 网友自拍亚洲| 2014国产精品| 要久久爱电视剧全集完整观看| 亚洲一区三区| 亚洲精品专区| 成人日韩在线视频| 99视频精品在线| 国产白丝一区二区三区| 亚洲国产另类av| 在线视频你懂得| 亚洲国产精品高清久久久| 国模吧精品人体gogo| 欧美激情免费看| 91国拍精品国产粉嫩亚洲一区| 91亚洲va在线va天堂va国| 亚洲+变态+欧美+另类+精品| 熟女熟妇伦久久影院毛片一区二区| 亚洲美洲欧洲综合国产一区| 污网站免费在线| 99视频有精品| 欧美久久久久久久久久久久| 精品婷婷伊人一区三区三| 日本韩国在线观看| 日韩在线观看成人| 成人福利av| 99久久精品免费看国产四区| 日本a口亚洲| 91黄色小网站| 成人一道本在线| 182在线观看视频| 在线亚洲人成电影网站色www| 国产91免费看| 久久久国产一区二区三区| 亚洲成人av观看| 久久精彩视频| 在线视频观看91| 亚洲国产精品99久久久久久久久| 国产又大又黑又粗免费视频| 日韩一区二区三区在线| 秋霞午夜在线观看| 国产精品亚洲美女av网站| 国产欧美日韩影院| 噜噜噜久久亚洲精品国产品麻豆| 国产99精品视频| avove在线播放| 欧美精品视频www在线观看 | 999av视频| 中文国产亚洲喷潮| 欧美理论影院| 久久伊人一区| 国产免费成人| 变态另类丨国产精品| 亚洲成精国产精品女| 亚洲精品成人区在线观看| 蜜臀久久99精品久久久无需会员 | 亚洲国产一区二区三区四区| 在线观看中文| 91精品视频专区| 香蕉综合视频| 久久6免费视频| 亚洲摸摸操操av| 国产精品久久久久毛片| y97精品国产97久久久久久| 91亚洲精品| 一区高清视频| 国产一区三区三区| 人妻人人澡人人添人人爽| 制服丝袜亚洲网站| av色综合久久天堂av色综合在| 91午夜在线播放| 国产精品激情| 成人手机在线免费视频| 欧美午夜影院在线视频| 日本一级在线观看| 日韩av成人在线| 色综合久久一区二区三区| 五月天丁香花婷婷| 亚洲欧美色综合| 蜜桃视频久久一区免费观看入口| 欧美精品福利视频| 欧美调教视频| 丝袜制服一区二区三区| 中文字幕一区二区三区不卡在线| 中文字幕一区2区3区| 久久精品亚洲国产| h视频久久久| 日日碰狠狠丁香久燥| 国产精品狼人久久影院观看方式| 99免费在线视频| 51午夜精品视频| 日本在线电影一区二区三区| 91丝袜超薄交口足| 亚洲成人777| a√资源在线| 99热99热| 日本网站在线观看一区二区三区 | 亚洲国产一区二区三区高清| 中国女人特级毛片| 777xxx欧美| av漫画网站在线观看| 日本婷婷久久久久久久久一区二区 | 中文字幕免费精品一区| 精品视频在线播放一区二区三区 | 精品国产91久久久久久久妲己| 理论不卡电影大全神| 亚洲人成影视在线观看| 丁香六月久久综合狠狠色| 无码人妻精品一区二| 毛片精品免费在线观看| 在线视频亚洲专区| 自拍一级黄色片| 91福利在线导航| 日本动漫同人动漫在线观看| 欧美一区二区三区四区在线观看地址| 国产一区二区伦理片| 少妇高潮av久久久久久| 久久6免费高清热精品|