એલએલવીએમ 9.0 નું નવું સંસ્કરણ પહેલાથી જ પ્રકાશિત થયું છે અને આ તે તેના સમાચાર છે

એલએલવીએમ

વિકાસના છ મહિના પછી એલએલવીએમ 9.0 પ્રોજેક્ટના નવા સંસ્કરણનું લોંચિંગ રજૂ કર્યું હતું, જે જીસીસી સુસંગત ટૂલકિટ છે (કમ્પાઇલર્સ, optimપ્ટિમાઇઝર્સ અને કોડ જનરેટર), જે આરઆઈએસસી જેવા વર્ચુઅલ સૂચનોના મધ્યવર્તી બીટ કોડમાં પ્રોગ્રામોને કમ્પાઇલ કરે છે (મલ્ટિ-લેવલ optimપ્ટિમાઇઝેશન સિસ્ટમ સાથેનું એક નિમ્ન-સ્તરનું વર્ચ્યુઅલ મશીન).

તે કમ્પાઇલ સમયને izeપ્ટિમાઇઝ કરવા માટે રચાયેલ છે, બંધનકર્તા સમય, કોઈપણ પ્રોગ્રામિંગ ભાષામાં એક્ઝેક્યુશન સમય કે જે વપરાશકર્તા વ્યાખ્યાયિત કરવા માંગે છે. મૂળરૂપે સી અને સી ++ કમ્પાઇલ કરવા માટે અમલમાં મૂકવામાં આવ્યા છે, એલએલવીએમની ભાષા અજ્ostાની ડિઝાઇન અને પ્રોજેક્ટ સફળતા વિવિધ ભાષાઓની રચના કરી છેObબ્જેક્ટિવ-સી, ફોર્ટ્રન, એડા, હાસ્કેલ, જાવા બાયટેકોડ, પાયથોન, રૂબી, એક્શનસ્ક્રિપ્ટ, જીએલએસએલ, ક્લેંગ, રસ્ટ, ગેમ્બેસ અને અન્યનો સમાવેશ થાય છે.

પેદા કરેલા સ્યુડો-કોડને પ્રોગ્રામ એક્ઝિક્યુશનના સમયે સીધા મશીન સૂચનોમાં JIT કમ્પાઈલરનો ઉપયોગ કરીને રૂપાંતરિત કરી શકાય છે.

એલએલવીએમ 9.0 ની મુખ્ય નવી સુવિધાઓ

એલએલવીએમ 9.0 ની નવી સુવિધાઓ પૈકી RISC-V પ્લેટફોર્મ પરથી પ્રાયોગિક વિકાસ ટ tagગને દૂર કરવા માટે સપોર્ટ મળ્યો, સીએન + + ઓપનસીએલ માટે સપોર્ટ.

બીજી નવીનતા કે સ્ટેન્ડ આઉટ એ પ્રોગ્રામને ગતિશીલ લોડ ભાગોમાં વહેંચવાની ક્ષમતા છે LLD માં અને Linux કર્નલ કોડમાં વપરાયેલ »asm ગોટો» કન્સ્ટ્રકટનો અમલ.

આ ઉપરાંત, તે પણ પ્રકાશિત કરવામાં આવ્યું છે કે લીબસી ++ ડબલ્યુએએસઆઈ માટે ટેકો સાથે પહોંચ્યું હતું (વેબએસ્પ્લેસમેન્ટ સિસ્ટમ ઇંટરફેસ), અને એલએલડીએ વેબઅસ્બsemblyશનલ ડાયનેમિક બંધનકર્તા માટે પ્રારંભિક સપોર્ટ રજૂ કર્યો. જીસીસીની વિશિષ્ટ અભિવ્યક્તિ m એએસએમ ગોટો of નું અમલીકરણ ઉમેર્યું, જે તમને એસેમ્બલ ઇનલાઇન બ્લોકથી સી કોડમાં ટેગ પર સ્વિચ કરવાની મંજૂરી આપે છે.

X86_64 સિસ્ટમો પર રણકારની મદદથી feature CONFIG_JUMP_LABEL = y «મોડમાં લિનક્સ કર્નલ બનાવવા માટે આ સુવિધા આવશ્યક છે. પહેલાનાં સંસ્કરણોમાં ઉમેરવામાં આવેલા ફેરફારોને ધ્યાનમાં રાખીને, લિનક્સ કર્નલ હવે ક્લેંગમાં x86_64 આર્કિટેક્ચર માટે બિલ્ટ કરી શકાય છે (અગાઉ, તે ફક્ત આર્મ, આર્ર્ચ 64, પીપીસી 32, પીપીસી 64 અને મીપ્સ આર્કિટેક્ચરો માટે જ સપોર્ટેડ હતી.

બીટીઆઈ સૂચનો માટે સપોર્ટ ઉમેરવામાં આવ્યો છે (શાખા લક્ષ્યાંક સૂચક) અને AArch64 આર્કિટેક્ચર માટે પીએસી (પોઇંટર પ્રમાણીકરણ કોડ). એમઆઈપીએસ, આરઆઈએસસી-વી, અને પાવરપીસી પ્લેટફોર્મ માટે નોંધપાત્ર રીતે સુધારેલ સપોર્ટ.

ઉપરાંત, Android અને ChromeOS પ્રોજેક્ટ્સ કર્નલ બનાવવા માટે ક્લેંગનો ઉપયોગ કરવા માટે પહેલાથી જ ફેરવાઈ ગયા છે અને ગૂગલ તેની ચાલી રહેલ લિનક્સ સિસ્ટમ્સ માટે પ્રાથમિક બિલ્ડ પ્લેટફોર્મ કર્નલ તરીકે રણકારનું પરીક્ષણ કરી રહ્યું છે.

ભવિષ્યમાં, કર્નલ સંકલન પ્રક્રિયા દરમ્યાન, અન્ય ઘટકોનો ઉપયોગ કરવાનું શક્ય બનશે એલએલવીએમ, એલએલડી, એલએલવીએમ-objબ્જેકopપી, ​​એલએલવીએમ-એઆર, એલએલવીએમ-એનએમ, અને એલએલવીએમ-objબ્જેક્ટમ્પ સહિત.

એલએલડી લિંકરમાં એક પ્રાયોગિક પાર્ટીશન ફંક્શન ઉમેરવામાં આવ્યું છે, જે પ્રોગ્રામને ઘણા ભાગોમાં વહેંચવાની મંજૂરી આપે છે, જેમાંથી દરેકને અલગ ઇએલએફ ફાઇલમાં મૂકવામાં આવે છે. આ સુવિધા તમને પ્રોગ્રામનો મુખ્ય ભાગ ચલાવવાની મંજૂરી આપે છે, જે આવશ્યકતા મુજબ પ્રક્રિયામાં બાકીના ઘટકોને લોડ કરશે (ઉદાહરણ તરીકે, તમે બિલ્ટ-ઇન પીડીએફ વ્યૂઅરને એક અલગ ફાઇલ તરીકે પસંદ કરી શકો છો, જે ફક્ત ત્યારે જ ડાઉનલોડ થશે જ્યારે ડાઉનલોડ કરવામાં આવશે વપરાશકર્તા ફાઇલ પીડીએફ ખોલે છે).

બીજી બાજુ, બેકએન્ડમાં અસંખ્ય સુધારાઓ પણ .ભા છે. એક્સ 86, એઆરચ 64, એઆરએમ, સિસ્ટમઝેડ, એમઆઈપીએસ, એએમડીજીપીયુ અને પાવરપીસી આર્કિટેક્ચર્સ માટે.

ઉદાહરણ તરીકે, એસએચઇ 2 અને એમટીઇ (મેમરી ટેગિંગ એક્સ્ટેંશન) સૂચનો માટે આધાર એ આર્ચ 64 આર્કિટેક્ચર માટે ઉમેરવામાં આવ્યું છે, આર્મ્વી 8.1-એમ આર્કિટેક્ચર માટે સપોર્ટ અને એમવીઇ આર્કીટેક્ચર એઆરએમ બેકએન્ડમાં ઉમેરવામાં આવ્યા છે.

એએમડીજીપીયુના કિસ્સામાં, જીએફએક્સ 10 આર્કિટેક્ચર માટે સપોર્ટ ઉમેરવામાં આવ્યો હતો (નવી), ડિફ defaultલ્ટને ફંક્શનની માંગ કરવા અને સક્રિય કરેલ સંયુક્ત ડીપીપી (ડેટા પ્રિમીટિવ્સ-સમાંતર) ને પસાર કરવા માટે સક્ષમ છે.

એલએલડીબી ડીબગરે ટ્રેસને પાછળની બાજુ હાઇલાઇટિંગ રજૂ કર્યું; DWARF4 ડિબગ_ટાઇપ્સ અને DWARF5 ડિબગ_ઇન્ફો બ્લોક્સ માટે સપોર્ટ ઉમેર્યો;

Llvm-objcopy અને llvm-strip ઉપયોગિતાઓએ COFF ફોર્મેટ એક્ઝેક્યુટેબલ ફાઇલો અને forબ્જેક્ટ્સ માટે આધાર ઉમેર્યો છે.

આરઆઈએસસી-વી આર્કિટેક્ચર માટેનું બેકએન્ડ સ્થિર છેછે, જે હવે પ્રાયોગિક તરીકે સ્થિત નથી અને ડિફ byલ્ટ રૂપે બિલ્ટ થયેલ છે. આરએવી 32 આઇ અને આરવી 64 આઇ સૂચના માટે કોડ જનરેશન માટે સંપૂર્ણ સપોર્ટ, એમએફડીસી એક્સ્ટેંશન સાથેના વેરિયન્ટ્સ.

સ્રોત: http://releases.llvm.org/


તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: AB ઈન્ટરનેટ નેટવર્ક્સ 2008 SL
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.