Nooca cusub ee LLVM 9.0 horay ayaa loo soo saaray waana kuwan wararkiisa

LLVM

Kadib lix bilood oo horumar ah soo bandhigida nooca cusub ee mashruuca LLVM 9.0 ayaa la soo bandhigay, taas oo ah aaladda isku xirnaanta GCC ee isku habboon (isku-duwayaasha, dhiirrigeliyeyaasha iyo soo-saareyaasha koodhka), kaas oo isku duba ridaya barnaamijyada qodo yar oo dhexdhexaad ah oo tilmaamo dalwad ah oo RISC u eg (mashiin heer-hoose ah oo heer sare ah oo leh nashqad heer sare ah).

Waxaa loogu talagalay in lagu hagaajiyo waqtiga isku duwidda, waqtiga ku qabashada, waqtiga fulinta luqad kasta oo barnaamij barnaamij ah oo isticmaalehu rabo inuu qeexo. Asal ahaan waxaa loo hirgaliyay in la soo ururiyo C iyo C ++, Naqshadaynta cilmiga luqadda ee LLVM, iyo guusha mashruuca waxay soo saareen luuqado kala duwan, oo ay ku jiraan Ujeeddada-C, Fortran, Ada, Haskell, Java bytecode, Python, Ruby, ActionScript, GLSL, Clang, Rust, Gambas iyo kuwa kale.

Koodh-been abuur ah oo la soo saaray ayaa loo rogi karaa iyada oo la adeegsanayo isku-duwaha JIT tilmaamaha mashiinka si toos ah waqtiga fulinta barnaamijka.

Astaamaha ugu muhiimsan ee cusub ee LLVM 9.0

Waxaa ka mid ah astaamaha cusub ee LLVM 9.0 hel taageero si aad uga saarto sumadda horumarka tijaabada ah barta RISC-V, Taageerada C ++ ee OpenCL.

Wax cusub oo taas taagan waa awoodda loo kala qaybin karo barnaamijka qaybo firfircoon oo lagu rakibo gudaha LLD iyo hirgelinta dhismaha 'asm goto »oo loo adeegsaday koodhka' Linux kernel code '.

Intaa waxaa sii dheer, waxaa sidoo kale la iftiimiyay in Libc ++ uu yimid iyadoo taageero la siinayo WASI (Websaydhka Nidaamka WebAssembly), iyo LLD waxay soo bandhigeen taageero bilow ah oo loogu talagalay qabashada firfircoonaanta WebAssembly. Ku darista hirgelinta muujinta gaarka ah ee GCC »asm goto», taas oo kuu oggolaanaysa inaad ka beddesho xayndaab isku xira khadadka 'tag' ee loo yaqaan 'C code'

Astaantan ayaa lagama maarmaan u ah in lagu dhiso kernel-ka Linux ah »CONFIG_JUMP_LABEL = y« mode iyadoo la adeegsanayo Clang on x86_64 systems. Iyadoo la tixgelinayo isbeddelada lagu soo kordhiyay noocyadii hore, Linux kernel ayaa hadda laga dhisi karaa Clang oo loogu talagalay naqshadaha x86_64 (hore, waxaa kaliya lagu taageeri jiray gacanta, aarch64, ppc32, ppc64le iyo naqshadaha mips).

Taageerada tilmaamaha BTI ayaa lagu daray (Tusiyaha Bartilmaameedka Laanta) iyo PAC (Tilmaamaha Aqoonsiga Tilmaamaha) ee dhismaha AArch64. Taageero muhiim ah oo la hagaajiyay ee MIPS, RISC-V, iyo dhufto ee PowerPC.

Sidoo kale, Mashruucyada Android iyo ChromeOS waxay durba u wareegeen adeegsiga Clang si loo dhiso xarkaha iyo Google waxay tijaabineysaa Clang oo ah aasaaska aasaasiga ah ee udubdhexaadka nidaamka Linux.

Mustaqbalka, inta lagu gudajiro geedi socodka soo aruurinta kernel, waxay noqon doontaa suurtagal in la isticmaalo waxyaabo kale LLVM, oo ay ku jiraan LLD, llvm-objcopy, llvm-ar, llvm-nm, iyo llvm-objdump.

Shaqada kala-soocida tijaabada ah ayaa lagu daray isku xiraha LLD, kaas oo u oggolaanaya barnaamijka in loo qaybiyo qaybo badan, oo mid kasta oo ka mid ah lagu meeleeyo feyl gooni ah ELF. Astaantani waxay kuu oggolaaneysaa inaad maamusho qaybta ugu muhiimsan ee barnaamijka, taas oo, sida loogu baahdo, ku shuban doonta qaybaha hadhay ee geeddi-socodka (tusaale ahaan, waxaad dooran kartaa qofka wax ku dhex-jira ee PDF-ga ah inuu yahay feyl gooni ah, kaas oo la soo degsan karo oo keliya marka isticmaalaha ayaa fura faylka PDF).

Dhinaca kale, horumarka badan ee xagga dambe ayaa sidoo kale taagan. loogu talagalay X86, AArch64, ARM, SystemZ, MIPS, AMDGPU, iyo dhismayaasha PowerPC.

Tusaale ahaan, taageerada tilmaamaha SVE2 iyo MTE (Memory Tagging Extensions) ayaa lagu daray qaab dhismeedka AArch64, taageerada dhismaha Armv8.1-M iyo dhismaha MVE ayaa lagu daray ARM backend.

Xaalada AMDGPU, taageerada dhismaha GFX10 ayaa lagu daray (Navi), ku-meel-gaadhka ah ayaa awood loo siiyay inuu ku dhawaaqo hawl oo uu u gudbiyo isku-darka firfircoon ee DPP (Xogta Horudhaca-Isbarbar).

Qashin-qadaha LLDB wuxuu soo bandhigay midab muujinta raadadka gadaal gadaal; lagu daray taageerada DWARF4 debug_types iyo DWARF5 debug_info blocks;

Llvm-objcopy iyo ylvm-strip yutiilitiyada ayaa ku darsaday taageerada qaab COFF ah faylal iyo walxo la fulin karo.

Taageerada dhismaha RISC-V waa la xasiliyay, taas oo aan hadda loo dhigin sidii tijaabo oo lagu dhisay qaab ahaan. Taageero buuxda oo ku saabsan abuurista koodhka ee tilmaamaha RV32I iyo RV64I ayaa dejinaya noocyo kaladuwan oo leh kordhinta MAFDC.

source: http://releases.llvm.org/


Ka tag faalladaada

cinwaanka email aan la daabacin doonaa. Beeraha loo baahan yahay waxaa lagu calaamadeeyay la *

*

*

  1. Ka mas'uul ah xogta: AB Internet Networks 2008 SL
  2. Ujeedada xogta: Xakamaynta SPAM, maaraynta faallooyinka.
  3. Sharci: Oggolaanshahaaga
  4. Isgaarsiinta xogta: Xogta looma gudbin doono dhinacyada saddexaad marka laga reebo waajibaadka sharciga ah.
  5. Kaydinta xogta: Macluumaadka ay martigelisay Shabakadaha Occentus (EU)
  6. Xuquuqda: Waqti kasta oo aad xadidi karto, soo ceshan karto oo tirtiri karto macluumaadkaaga.