国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

汽車異構硬件平臺開發如何進行靜態代碼分析

北匯信息POLELINK ? 2024-10-09 16:15 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著汽車軟件開發的復雜程度不斷提升,尤其是智能網聯汽車和自動駕駛技術的進步,汽車軟件開發的復雜程度不斷攀升。為了滿足日益增長的功能需求和技術挑戰,異構硬件平臺被越來越多地采用,不同的工具鏈也不可避免地被引入到實際的開發流程中。這一趨勢不僅增加了開發過程的技術多樣性,也使得單個項目的編譯過程中會涉及到多種編譯器。

本文主要講解基于靜態代碼分析工具Helix QAC,我們該如何對多編譯器工程進行靜態分析。

新版本Helix QAC(2024.1+)的分析方式

為了適應這一趨勢,Helix QAC在2024年發布的版本中引入了多CCT的功能。CCT(Compiler Compatibility Template),是HelixQAC軟件中存儲編譯器環境配置的文件。根據CCT文件生成的方式,HelixQAC把CCT分為了兩種:

  1. 自動CCT(Auto CCT):在工程同步時,自動生成的CCT;
  2. 靜態CCT(Static CCT):基于CCT生產工具提前生成的CCT;

自動CCT

針對自動CCT方式,多編譯器的配置也是自動的,無需我們進行額外的設置,目前HelixQAC支持使用自動CCT的編譯器如下表:

Compiler Filter Command
ARM Clang qa_armclang armclang
Clang C qa_clang clang,clang-[3-9][.][0-9],clang-[1-9][0-9][.][0-9],clang-[3-9],clang-[1-9][0-9]
Clang C++ qa_clang clang++,clang++-[3-9][.][0-9],clang++-[1-9][0-9][.][0-9],clang++-[3-9],clang++-[1-9][0-9]
Compiler caching toolsccache ccache,distcc,ccache-motorola,ccache_cc,ccache_cxx
Embarcadero BCC qa_bccclang bcc64
GNU C qa_gnu gcc,cc,c++,gcc-[1-9],gcc-[1-9][0-9],gcc-[1-9][.][0-9],gcc-[1-9][0-9][.][0-9]
GNU C Cross compilers qa_gnu *-*-gcc,*-*-*-gcc,*-*-*-gcc-[1-9]*
GNU C++ qa_gnu g++,g++-[1-9],g++-[1-9][0-9],g++-[1-9][.][0-9],g++-[1-9][0-9][.][0-9]
GNU C++ Cross compilersqa_gnu *-*-g++,*-*-*-g++,*-*-*-g++-[1-9]*
GNU cc1/cc1plus qa_gnu_cc1 cc1,cc1plus
Green Hills ARM qa_ghs cxarm,ccarm,cxarm64,ccarm64,cxthumb,ccthumb,cxtxarm,cctxarm
Green Hills Integrity qa_ghs ccint*,cxint*
Green Hills PPC qa_ghs cxppc,ccppc,cxtxppc,cctxppc
Green Hills TriCore qa_ghs cctri,cxtri
Green Hills v850 qa_ghs cx*850,cc*850,cxv850e,ccv850e
Hexagon Clang qa_hexagonclang hexagon-clang,hexagon-clang++
HighTec Tricore qa_hightec tricore-c++,tricore-g++,tricore-gcc
IAR compilers qa_icc icc*
Keil ArmCC qa_armcc armcc
Microchip MPLAB pic24 qa_microchip30 pic30-gcc
Microchip MPLAB xc16 qa_microchip16 xc16-gcc
Microchip MPLAB xc32 qa_microchip32 xc32-gcc,xc32-g++,xc32-c++
Microchip MPLAB xc8 qa_microchip8 xc8
Microchip MPLAB xc8-ccqa_microchip8cc xc8-cc
QNX qa_qnx qcc,QCC,q++
Renesas qa_renesas ccrh,ccrl,ccrx,cx
Renesas ca850 qa_renesas_ca850ca850
Renesas cc78k0 qa_renesas_cc78k0cc78k0,cc78k0r
Synopsys DesignWare ARCqa_metaware ccac
TI CCS qa_ti armcl,cl[0-9]?*,clpru
TI CCS Clang qa_tiarmclang tiarmclang
Tasking qa_tasking ctc,cptc,cmcs
Visual Studio qa_mscompile cl,clarm,clsh
Wind River qa_windriver dplus,dcc

靜態CCT

如果我們采用傳統的靜態CCT的方式,那么需要我們提前為不同的編譯器生成對應的CCT文件,并在HeliXQAC中將這些CCT導入到軟件中。

HelixQAC現在支持為一種語言選擇多個CCT配置,如下:

wKgZoWcGO1qAS3bSAADaMoClsiY434.png

在我們完成源碼加載后,如果不進行單獨配置,那么HelixQAC會使用Default CCT對源碼進行解析。如果文件夾內的源碼使用的編譯器與默認CCT不一樣,可以在對應的文件屬性中重新選擇合適的CCT配置。

wKgaoWcGO1qAWwXQAAB-IMDu3eY073.png

需要注意的是,我們只能針對文件夾進行CCT的選擇,不能針對單個源碼進行CCT的配置。而且,對于多CCT的工程,由于這是Helix QAC最新版本才有的功能,因此無法兼容Dashboard,只能將多CCT工程的分析結果上傳到Validate中。

老版本Helix QAC的分析方式

由于老版本HelixQAC中無法為文件夾選擇不同的CCT,如果要實現多編譯器的工程分析,需要借助HelixQAC的CMA工程。

CMA(Cross-Module Analysis),是HeliXQAC提供的一種跨模塊分析功能,它允許我們將多個HeliXQAC工程添加到CMA工程中,以進行跨模塊的分析,并檢查重復定義、不兼容的聲明和未使用的變量等問題。

具體到多編譯器的工程場景,我們需要為每個編譯器建立一個HelixQAC工程,并將使用該編譯器的源碼及頭文件加載到該工程中,然后將這些不同編譯器的QAC工程添加到CMA工程中。

顯然,Helix QAC的新功能提供了極大便利,來高效支持多編譯器。

結語:

通過上述討論可以看出,隨著汽車軟件開發復雜度的提升,異構硬件平臺的應用已成為必然趨勢。多編譯器環境的引入不僅是技術發展的自然產物,更是解決日益增長的功能需求和技術挑戰的有效途徑。在此背景下,Helix QAC 作為一款先進的靜態代碼分析工具,其新版本中引入的多CCT功能為開發人員提供了強大的支持,該功能不僅簡化了多編譯器環境下的代碼分析過程,還可以極大增強代碼的質量和安全性。

如果想試用最新版的Helix QAC,歡迎垂詢北匯信息。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 編譯器
    +關注

    關注

    1

    文章

    1672

    瀏覽量

    51626
  • 靜態測試
    +關注

    關注

    0

    文章

    34

    瀏覽量

    6866
  • 汽車
    +關注

    關注

    15

    文章

    4154

    瀏覽量

    41103
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    分析嵌入式軟件代碼的漏洞-代碼注入

    惡意的互聯網環境中確保他們的嵌入式代碼能夠安全使用的開發人員,應該將這樣的代碼注入漏洞,在開發周期和嚴格的代碼檢查中盡早消除。 上面提到的高
    發表于 12-22 12:53

    C語言單元測試在嵌入式軟件開發中的作用及專業工具的應用

    平臺和操作系統上運行,無需進行大量的修改 二、C語言單元測試在嵌入式開發中的關鍵作用 嵌入式系統對實時性和可靠性要求極高,單元測試是確保代碼質量的關鍵手段。單元測試在嵌入式
    發表于 12-18 11:46

    瑞薩RZ/T2H平臺多核異構的應用場景分析

    本文以RZ/T2H多軸控制/驅動的實例,介紹RZ/T2H平臺的多核異構應用場景。
    的頭像 發表于 12-15 11:34 ?2429次閱讀
    瑞薩RZ/T2H<b class='flag-5'>平臺</b>多核<b class='flag-5'>異構</b>的應用場景<b class='flag-5'>分析</b>

    主流低代碼開發平臺有哪些:加速數字化轉型的核心力量

    在數字化轉型浪潮席卷各行各業的當下,企業對快速開發、靈活迭代應用程序的需求日益迫切。低代碼開發平臺憑借其可視化編程、模塊化組件和簡化開發流程
    的頭像 發表于 11-03 16:53 ?595次閱讀

    2025支持AI 驅動數字化轉型的低代碼開發平臺有哪些

    ”,其技術深度、行業適配性與生態完整性直接決定企業轉型成效。本文基于行業趨勢與用戶需求,梳理2025年國內低代碼開發平臺,并對比分析其與得帆低代碼
    的頭像 發表于 10-31 13:18 ?321次閱讀

    代碼開發平臺推薦:2025國內低代碼開發平臺排名TOP10

    代碼開發平臺排行榜 在企業數字化轉型的浪潮中,低代碼開發平臺正逐漸成為企業實現高效
    的頭像 發表于 10-28 10:22 ?743次閱讀

    2025主流低代碼平臺有哪些:低代碼開發平臺選型指南指南

    在企業數字化轉型進入深水區的當下,低代碼開發平臺已從早期的“效率工具”升級為“核心基建”。其工程化能力、流程適配深度、技術延展性與行業積淀,直接決定了企業轉型的成效。據Gartner預測,到2026
    的頭像 發表于 10-22 11:49 ?407次閱讀

    如何在Zephyr中進行靜態代碼分析

    在嵌入式軟件開發中,“能編譯通過”并不等于“可以放心交付”。安全性、可靠性和合規性是產品能否順利量產的關鍵。進入量產的Bug會浪費寶貴的工程時間,也會削弱用戶信任;安全漏洞可能暴露設備,帶來嚴重后果;在受監管市場中,若未滿足MISRA或CERT檢查要求,甚至會直接導致產品發布延遲。
    的頭像 發表于 10-17 10:28 ?874次閱讀

    工業物聯網平臺有哪些低代碼應用

    在工業物聯網領域,低代碼平臺通過可視化開發、模塊化組件和預置模板,顯著降低了開發門檻和周期,同時支持靈活擴展與集成。以下是工業物聯網平臺中低
    的頭像 發表于 09-24 14:49 ?605次閱讀

    知識分享 | 使用MXAM進行AUTOSAR模型的靜態分析:Embedded Coder與TargetLink模型

    知識分享在知識分享欄目中,我們會定期與讀者分享來自MES模賽思的基于模型的軟件開發相關Know-How干貨,關注公眾號,隨時掌握基于模型的軟件設計的技術知識。使用MXAM進行AUTOSAR模型的靜態
    的頭像 發表于 08-27 10:04 ?730次閱讀
    知識分享 | 使用MXAM<b class='flag-5'>進行</b>AUTOSAR模型的<b class='flag-5'>靜態</b><b class='flag-5'>分析</b>:Embedded Coder與TargetLink模型

    汽車軟件團隊必看:基于靜態代碼分析工具Perforce QAC的ISO 26262合規實踐

    ISO 26262合規指南,從ASIL分級到工具落地,手把手教你用靜態代碼分析(Perforce QAC)實現高效合規。
    的頭像 發表于 08-07 17:33 ?1145次閱讀
    <b class='flag-5'>汽車</b>軟件團隊必看:基于<b class='flag-5'>靜態</b><b class='flag-5'>代碼</b><b class='flag-5'>分析</b>工具Perforce QAC的ISO 26262合規實踐

    代碼開發平臺是什么?零編程零成本搭建

    代碼物聯網云平臺是種融合了低代碼開發能力與物聯網(IoT)技術的云端服務平臺,其核心目標是大幅降低物聯網應用的
    的頭像 發表于 07-31 15:25 ?761次閱讀

    什么是零代碼平臺

    代碼平臺是一種無需編寫傳統代碼,通過可視化拖拽、參數配置、邏輯連線即可快速搭建業務流程與應用系統的工具平臺。它將復雜的軟件開發過程轉化為
    發表于 07-12 20:28

    TurMass? TK8620 開發平臺使用體驗報告

    ,支持終端設備與網關的多模式通信。本文基于TKB-620終端開發板及TKB-200網關開發板的實際測試與開發體驗,從硬件設計、軟件配套、功能測試、
    發表于 04-24 02:18

    【JVM開發者必看】IntelliJ IDEA代碼分析實踐指南:實時糾錯、冗余檢測、自動修復等

    【IntelliJ IDEA中的代碼分析技巧】靜態代碼分析是指在不實際運行代碼的情況下掃描
    的頭像 發表于 03-13 10:34 ?1068次閱讀
    【JVM<b class='flag-5'>開發</b>者必看】IntelliJ IDEA<b class='flag-5'>代碼</b><b class='flag-5'>分析</b>實踐指南:實時糾錯、冗余檢測、自動修復等