LLVM 16.0 kuma an sake shi kuma waɗannan labarai ne

LLVM Logo

LLVM tsari ne don haɓaka masu tarawa da kuma taimakawa wajen gina sabbin harsunan shirye-shirye da haɓaka harsunan da ake da su.

Bayan sama da watanni shida na ci gaba. ƙaddamar da sabon sigar aikin LLVM 16.0, sigar wanda aka aiwatar da babban adadin canje-canje da haɓakawa.

Ga waɗanda ba su da masaniya da LLVM, ya kamata ku san wannan mai haɗawa GCC ne (masu haɗawa, masu haɓakawa, da masu samar da lambar) waɗanda ke tattara shirye-shirye a cikin RISC-kamar koyarwar kama-da-wane tsaka-tsaki na bitcode (na'ura mai ƙarancin ƙima tare da tsarin ingantawa da yawa).

Za'a iya canza lambar ƙirar ƙira ta JIT mai tarawa zuwa umarnin injin daidai lokacin aiwatar da shirin.

Manyan sababbin fasali na LLVM 16.0

A cikin wannan sabon sigar da aka gabatar, zamu iya samun ci gaba da yawa masu mahimmanci a cikin 16.0, wanda ma'aunin C ++/ ObjC++ ya fito waje, wanda an saita zuwa gnu++17 (tsohon gnu++14), wanda yana nuna goyan baya ga fasalin C++17 tare da kari na GNU ta tsohuwa. An ba da izinin amfani da abubuwan da aka ayyana a ma'aunin C++17 a cikin lambar LLVM.

Wani sauye-sauyen da ya yi fice shi ne an kara shi goyon baya ga Cortex-A715, Cortex-X3 da Neoverse CPUs V2, Armv8.3 kari da fasali iri-iri zuwa AArch64 baya.
La daidaitawar dandamali An dakatar da Armv2, Armv2A, Armv3 da Armv3M a cikin bangon bayan gine-gine na ARM, wanda ba a ba da garantin samar da ingantaccen code ba. Ƙara ikon samar da lamba don umarni don aiki tare da hadaddun lambobi kuma an ƙara goyon baya ga gine-gine na umarni sets (ISA) AMX-FP16, CMPXADD, AVX-IFMA, AVX-VNNI-INT8, AVX-NE-CONVERT zuwa X86 baya.

Bayan haka, Abubuwan da ake buƙata don gina LLVM an ƙara su, Hakanan ginin ya kamata yanzu ya dace da ma'aunin C ++17, watau ginin yana buƙatar aƙalla GCC 7.1, Clang 5.0, Apple Clang 10.0 ko Visual Studio 2019 16.7.

A gefe guda kuma, yana haskakawa ingantattun abubuwan baya don MIPS, PowerPC da RISC-V gine-gine, kazalika da goyan baya don ƙaddamar da 64-bit executables don tsarin gine-ginen LoongArch zuwa LLDB debugger da ingantacciyar kula da alamun lalata COFF.

Na sauran canje-canje cewa tsaya a waje:

  • A cikin ɗakin karatu na Libc ++, babban aikin ya mayar da hankali ga aiwatar da tallafi don sababbin siffofi na C ++ 20 da C ++ 23.
  • An rage lokacin haɗin kai sosai a cikin mai haɗin LDD ta hanyar daidaita sikanin sauya wurin adireshi da ayyukan fara sashe. Ƙara goyon baya don matsawa sashe ta amfani da algorithm na ZSTD.
  • Ayyukan ci-gaba da aka aiwatar tare da ma'aunin C++20 kuma an ba da haske.
  • kama tsarin hanyoyin haɗin kai a ayyukan lambda.
  • Ma'aikacin daidaito a cikin maganganu.
  • Ƙarfin rashin ƙididdige maƙalar nau'in kalmar a wasu mahallin,
  • Izinin ƙaddamarwa da aka ƙara tsakanin baka ("Aggr(val1, val2)").
  • Ayyukan da aka aiwatar da aka ayyana a ma'aunin C++2b na gaba.
  • Ana ba da tallafi tare da nau'in char8_t,
  • Ƙarfafa kewayon haruffa da aka ba da izinin amfani da su a cikin "\N{…}",
  • Ƙara ikon yin amfani da masu canji da aka ayyana a matsayin "a tsaye constexpr" a cikin ayyukan da aka ayyana azaman constexpr.
  • Ayyukan da aka aiwatar da aka ayyana a ma'aunin C2x C na gaba:
  • Ƙara goyon baya don loda fayilolin sanyi da yawa (an fara ɗora fayilolin sanyi na tsoho, sannan waɗanda aka ƙayyade ta hanyar "–config=", wanda yanzu za'a iya ƙayyade sau da yawa).
  • Canza odar kaya na tsoffin fayilolin saiti: clang yayi ƙoƙarin loda fayil da farko - .cfg kuma idan bai samu ba, yana ƙoƙarin loda fayiloli biyu .cfg kuma .cfg.
  • An ƙara sabon tutar gini "-fcoro-aligned-allocation" don daidaitawar firam ɗin yau da kullun.
  • An ƙara tuta ta "-fmodule-output" don ba da damar ƙirar ginin lokaci-ɗaya na ma'auni na C++.
  • Yanayin da aka ƙara "-Rpass-analysis=stack-frame-layout" don tantance batutuwa tare da shimfidar firam ɗin tari.
  • An ƙara sabon __ sifa __((version_version("cpu_features"))) sifa da kuma tsawaita aikin __siffar__((target_clones("cpu_features1″,"cpu_features2",...))) sifa don zaɓar takamaiman nau'ikan fasalulluka da CPU AA64 ya bayar. .
  • Ingantattun kayan aikin bincike:
  • Ƙararrawar faɗakarwa "-Wsingle-bit-bit-filin-constant-constant-constant" don kama tsintsiya madaurinki ɗaya lokacin sanya ɗaya zuwa filin bit-bit da aka sa hannu.
  • Ƙwararren bincike don masu canji na constexpr marasa farawa.
  • An ƙara "-Wcast-function-type-type" da "-Wincompatible-function-pointer-types-strict" gargadi don kama m al'amurran da suka shafi lokacin simintin nau'ikan ayyuka.

Finalmente Idan kuna da sha'awar sanin game da shi, zaka iya bincika bayanan a cikin bin hanyar haɗi.


Bar tsokaci

Your email address ba za a buga. Bukata filayen suna alama da *

*

*

  1. Alhakin bayanai: AB Internet Networks 2008 SL
  2. Manufar bayanan: Sarrafa SPAM, sarrafa sharhi.
  3. Halacci: Yarda da yarda
  4. Sadarwar bayanan: Ba za a sanar da wasu bayanan ga wasu kamfanoni ba sai ta hanyar wajibcin doka.
  5. Ajiye bayanai: Bayanin yanar gizo wanda Occentus Networks (EU) suka dauki nauyi
  6. Hakkoki: A kowane lokaci zaka iyakance, dawo da share bayanan ka.