GCC 12.1 आधीच रिलीझ झाले आहे, त्याची बातमी आणि त्याची 35 वी वर्धापन दिन जाणून घ्या

GNU GCC लोगो

लाँच कंपाइलरची नवीन आवृत्ती जीसीसी (GNU कंपाइलर कलेक्शन) 12.1 आधीच रिलीज झाला होता आणि GCC च्या सर्व प्रमुख प्रकाशनांप्रमाणे, हे प्रकाशन अनेक जोड, सुधारणा, दोष निराकरणे आणि नवीन वैशिष्ट्ये आणेल, तसेच या महिन्यात (मे 23), प्रकल्प पहिल्या प्रकाशनाच्या निर्मितीपासून 35 वर्षे साजरी करेल.

GCC 12 हे आधीच Fedora 36 साठी सिस्टम कंपाइलर आहे आणि GCC 12 Red Hat डेव्हलपर टूलसेट (आवृत्ती 7) किंवा Red Hat GCC टूलसेट (आवृत्त्या 8 आणि 9) मध्ये Red Hat Enterprise Linux वर देखील उपलब्ध असेल.

GCC विकासकांना GCC, 12.1 चे आणखी एक मोठे प्रकाशन घोषित करताना अभिमान वाटतो.

या वर्षी आम्ही GCC च्या पहिल्या बीटा आवृत्तीचा 35 वा वर्धापन दिन साजरा करत आहोत
आणि या महिन्यात आम्ही GCC 35 रिलीज झाल्यापासून 1.0 वर्षे साजरी करू!

हे प्रकाशन STABS डीबग फॉरमॅटसाठी समर्थन कमी करते आणि
CTF डीबगिंग फॉरमॅट [१] साठी समर्थन सादर करते. C आणि C++
वैशिष्ट्यांसाठी विस्तारित समर्थनासह इंटरफेस पुढे जात आहेत
आगामी C2X आणि C++ 23 मानक आणि C++ मानक लायब्ररीमध्ये
C++20 आणि C++23 च्या प्रायोगिक भागांसाठी समर्थन सुधारते.
C सह इंटरऑपरेबिलिटीसाठी फोरट्रान इंटरफेस आता TS 29113 सह पूर्णतः सुसंगत आहे.

GCC 12.1 मध्ये नवीन काय आहे?

या नवीन आवृत्तीत अनेक प्रस्तावांची अंमलबजावणी करण्यात आली आहे, जसे की भाषांसाठी C आणि C++, जोडले अंगभूत कार्य __ऑब्जेक्टचा आकार निश्चित करण्यासाठी बिल्टिन_डायनॅमिक_ऑब्जेक्ट_साइज, Clang च्या समान कार्याशी सुसंगत.

जोडले C आणि C++ भाषांसाठी "अनुपलब्ध" विशेषतासाठी समर्थन (उदाहरणार्थ, तुम्ही फंक्शन्स चिन्हांकित करू शकता ज्यामुळे वापरल्यावर त्रुटी येईल), तसेच C आणि C++ भाषांसाठी "#elifdef" आणि "#elifndef" प्रीप्रोसेसिंग निर्देशांसाठी जोडलेले समर्थन.

हे देखील लक्षात घेतले आहे की UTF-8 वर्णांचा गैरवापर झाल्यास चेतावणी देण्यासाठी "-Wbidi-chars" ध्वज, द्विदिशात्मक मजकूर प्रदर्शन क्रम बदलणे, तसेच अॅरेचा संदर्भ असलेल्या दोन ऑपरेंडची तुलना करण्याचा प्रयत्न करताना चेतावणी जारी करण्यासाठी "-Warray-तुलना" ध्वज.

याव्यतिरिक्त, आयOpenMP 5.0 आणि 5.1 मानकांची अंमलबजावणी (ओपन मल्टी-प्रोसेसिंग), जे एपीआय परिभाषित करते आणि मल्टीकोर आणि हायब्रिड (CPU + GPU / DSP) सिस्टीमवर सामायिक मेमरी आणि व्हेक्टरायझेशन युनिट्स (SIMD) सह समांतर प्रोग्रामिंग पद्धती लागू करण्याच्या पद्धती, चालू ठेवण्यात आले होते.

तसेच OpenACC 2.6 समांतर प्रोग्रामिंग तपशीलाची सुधारित अंमलबजावणी, GPUs आणि NVIDIA PTX सारख्या विशेष प्रोसेसरवरील ऑपरेशन्स ऑफलोड करण्याचे साधन परिभाषित करणे; आणि इंटेल AVX512-FP16 विस्तारित सूचना आणि _Float16 प्रकार x86 कोड जनरेशन बॅकएंडसाठी समर्थन जोडणे.

Fortran फ्रंट-एंड TS 29113 स्पेसिफिकेशनसाठी पूर्ण समर्थन प्रदान करते, जे फोरट्रान आणि C कोड दरम्यान पोर्टेबिलिटी सुनिश्चित करण्यासाठी शक्यतांचे वर्णन करते.

1980 मध्ये तयार केलेल्या "STABS" डीबगिंग माहिती स्टोरेज फॉरमॅटसाठी नापसंत समर्थन.

__builtin_shufflevector(vec1, vec2, index1, index2, …) एक्स्टेंशनसाठी समर्थन जोडले गेले आहे जे क्लॅंगमध्ये जोडले गेले आहे, जे सामान्य वेक्टर शफल आणि शफल ऑपरेशन्स करण्यासाठी एक कॉल प्रदान करते.

"-O2" ऑप्टिमायझेशन स्तर वापरताना, व्हेक्टरायझेशन डीफॉल्टनुसार सक्षम केले जाते (-ftree-vectorize आणि -fvect-cost-model=अत्यंत स्वस्त मोड सक्षम केले आहेत). "अत्यंत स्वस्त" मॉडेल व्हेक्टर कोड केवळ व्हेक्टरीज करण्यायोग्य स्केलर कोडला पूर्णपणे बदलू शकला तरच व्हेक्टरायझेशनला अनुमती देते.

"-ftrivial-auto-var-init" मोड जोडला समस्यांचा मागोवा घेण्यासाठी स्टॅकवर स्पष्ट व्हेरिएबल इनिशिएलायझेशन सक्षम करण्यासाठी आणि अनइनिशियलाइज व्हेरिएबल्सच्या वापराशी संबंधित असुरक्षा अवरोधित करा.

जोडले कंपाइलरमध्ये तयार केलेल्या सी फंक्शन्सची अंमलबजावणी विस्तारित एआरएम सूचना (ls64) च्या वापरावर आधारित, अणू लोडिंग आणि मेमरीमध्ये डेटा स्टोरेजसाठी (इंट्रिन्सिक्स). ARM mopoption विस्तार वापरून memcpy, memmove, आणि memset फंक्शन्सचा वेग वाढवण्यासाठी समर्थन जोडले.

जोडले नवीन सत्यापन मोड "-fsanitize=shadow-call-stack" ( ShadowCallStack ), जे सध्या फक्त AArch64 आर्किटेक्चरसाठी उपलब्ध आहे आणि "-fixed-r18" पर्यायासह कोड संकलित करताना कार्य करते. स्टॅक बफर ओव्हरफ्लो झाल्यास मोड फंक्शनचा परतावा पत्ता पुन्हा लिहिण्यापासून संरक्षण प्रदान करतो. फंक्शनवर नियंत्रण हस्तांतरित केल्यानंतर परतीचा पत्ता वेगळ्या "सावली" स्टॅकमध्ये जतन करणे आणि फंक्शनमधून बाहेर पडण्यापूर्वी हा पत्ता पुनर्प्राप्त करणे हे संरक्षणाचे सार आहे.

स्त्रोत: https://gcc.gnu.org/pipermail


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटासाठी जबाबदार: AB इंटरनेट नेटवर्क 2008 SL
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.