क्लैङ

From alpha
Jump to navigation Jump to search

Clang
मूल लेखकChris Lattner
डेवलपर(ओं)LLVM Developer Group
आरंभिक रिलीजSeptember 26, 2007; 16 years ago (2007-09-26)[1]
Stable release
Script error: The module returned a nil value. It is supposed to return an export table. / Script error: The module returned a nil value. It is supposed to return an export table.
Preview release
Script error: The module returned a nil value. It is supposed to return an export table. / Script error: The module returned a nil value. It is supposed to return an export table.
इसमें लिखा हुआC++
ऑपरेटिंग सिस्टमUnix-like
प्लेटफॉर्मAArch64, ARMv7, IA-32, x86-64, ppc64le[2]
प्रकारCompiler front end
लाइसेंसApache License 2.0 with LLVM Exceptions[3][4]
वेबसाइटclang.llvm.org

क्लैंग (/ clæŋg/) [[सी (प्रोग्रामिंग भाषा)]], सी++, उद्देश्य सी, और [[उद्देश्य-सी ++]] प्रोग्रामिंग भाषाओं के साथ-साथ ओपनएमपी के लिए एक कंपाइलर फ्रंट एंड है।[5] OpenCL, RenderScript, CUDA, और GPUOpen#AMD Boltzmann इनिशिएटिव[6] चौखटे। यह जीएनयू संकलक संग्रह (जीसीसी) के लिए एक ड्रॉप-इन प्रतिस्थापन के रूप में कार्य करता है, इसके अधिकांश संकलन झंडे और अनौपचारिक भाषा एक्सटेंशन का समर्थन करता है।[7][8]इसमें एक स्थिर कार्यक्रम विश्लेषण और कई कोड विश्लेषण उपकरण शामिल हैं।[9]

क्लैंग एलएलवीएम कंपाइलर बैक एंड के साथ मिलकर काम करता है और एलएलवीएम 2.6 और उसके बाद का सबप्रोजेक्ट रहा है।[10] एलएलवीएम की तरह, यह अपाचे लाइसेंस 2.0 सॉफ्टवेयर लाइसेंस के तहत मुफ़्त और ओपन-सोर्स सॉफ़्टवेयर है।[3][4] इसके योगदानकर्ताओं में Apple Inc., Microsoft, Google, ARM Holdings, Sony, Intel, और Advanced Micro Devices शामिल हैं।

क्लैंग 14, मार्च 2022 तक क्लैंग का नवीनतम प्रमुख संस्करण, C++17 तक सभी प्रकाशित C++ मानकों के लिए पूर्ण समर्थन प्राप्त है, C++20 की अधिकांश विशेषताओं को लागू करता है, और आगामी C++23 मानक के लिए प्रारंभिक समर्थन है। .[11]V6.0.0 के बाद से, क्लैंग डिफ़ॉल्ट रूप से GNU++14 बोली का उपयोग करके C++ संकलित करता है, जिसमें C++14 मानक और अनुरूप GNU एक्सटेंशन की विशेषताएं शामिल हैं।[12]


पृष्ठभूमि

2005 से, Apple Inc. ने कई वाणिज्यिक उत्पादों में LLVM का व्यापक उपयोग शुरू किया,[13] आईओएस एसडीके और एक्सकोड 3.1 सहित। एलएलवीएम के पहले उपयोगों में से एक ओएस एक्स के लिए ओपनजीएल कोड कंपाइलर था जो ओपनजीएल कॉल को ग्राफ़िक्स प्रोसेसिंग युनिट्स (जीपीयू) के लिए अधिक मौलिक कॉल में परिवर्तित करता है जो कुछ सुविधाओं का समर्थन नहीं करते हैं। इसने Apple को Intel GMA चिपसेट का उपयोग करने वाले कंप्यूटरों पर OpenGL का समर्थन करने की अनुमति दी, जिससे उन मशीनों पर प्रदर्शन बढ़ गया।[14] एलएलवीएम परियोजना मूल रूप से जीएनयू कंपाइलर संग्रह के फ्रंट एंड का उपयोग करने का इरादा रखती है। जीसीसी स्रोत कोड, हालांकि, बड़ा और कुछ बोझिल है; एक लंबे समय के जीसीसी डेवलपर ने इसे एलएलवीएम का जिक्र करते हुए कहा, हिप्पो को नृत्य करने की कोशिश करना वास्तव में बहुत मजेदार नहीं है।[15] इसके अलावा, ऐप्पल सॉफ्टवेयर ऑब्जेक्टिव-सी का उपयोग करता है, जो जीसीसी डेवलपर्स के लिए कम प्राथमिकता है। इस प्रकार, जीसीसी एप्पल के एकीकृत विकास पर्यावरण (आईडीई) में सुचारू रूप से एकीकृत नहीं होता है।[16] अंत में, जीसीसी का लाइसेंस समझौता, जीएनयू जनरल पब्लिक लाइसेंस#संस्करण 3|जीएनयू जनरल पब्लिक लाइसेंस (जीपीएल) संस्करण 3, उन डेवलपर्स की आवश्यकता है जो अपने स्रोत कोड को उपलब्ध कराने के लिए एक्सटेंशन या जीसीसी के संशोधित संस्करण वितरित करते हैं, लेकिन एलएलवीएम का अनुमेय सॉफ्टवेयर लाइसेंस नहीं है इसकी आवश्यकता है।[3][4]

अंत में, Apple ने Clang को विकसित करने के लिए चुना, एक नया कंपाइलर फ्रंट एंड जो C, Objective-C और C++ को सपोर्ट करता है।[16]जुलाई 2007 में, परियोजना को ओपन-सोर्स बनने की स्वीकृति मिली।[17]


डिजाइन

क्लैंग एलएलवीएम के साथ मिलकर काम करता है।[18] क्लैंग और एलएलवीएम का संयोजन जीसीसी समाधान स्टैक को बदलने के लिए अधिकांश टूलचेन प्रदान करता है। क्लैंग के मुख्य लक्ष्यों में से एक पुस्तकालय-आधारित वास्तुकला प्रदान करना है,[19] ताकि कंपाइलर अन्य टूल्स के साथ इंटरऑपरेट कर सके जो स्रोत कोड के साथ इंटरैक्ट करते हैं, जैसे एकीकृत विकास वातावरण (आईडीई)। इसके विपरीत, जीसीसी एक कंपाइल-लिंकर (कंप्यूटिंग)-डिबगिंग वर्कफ़्लो में काम करता है; इसे अन्य उपकरणों के साथ एकीकृत करना हमेशा आसान नहीं होता है। उदाहरण के लिए, जीसीसी फोल्ड नामक एक कदम का उपयोग करता है जो समग्र संकलन प्रक्रिया की कुंजी है, जिसका कोड ट्री को मूल स्रोत कोड के विपरीत दिखने वाले रूप में अनुवाद करने का दुष्प्रभाव होता है। यदि तह चरण के दौरान या बाद में कोई त्रुटि पाई जाती है, तो उसे मूल स्रोत में एक स्थान पर वापस अनुवाद करना मुश्किल हो सकता है। इसके अलावा, आईडीई के भीतर जीसीसी स्टैक का उपयोग करने वाले विक्रेताओं को वाक्य - विन्यास पर प्रकाश डालना और बुद्धिमान कोड पूर्णता जैसी सुविधाएं प्रदान करने के लिए कोड को अनुक्रमित करने के लिए अलग-अलग टूल का उपयोग करना चाहिए।

क्लैंग जीसीसी की तुलना में संकलन प्रक्रिया के दौरान अधिक जानकारी रखता है, और मूल कोड के समग्र रूप को संरक्षित करता है, जिससे त्रुटियों को मूल स्रोत में वापस मैप करना आसान हो जाता है। क्लैंग की त्रुटि रिपोर्ट अधिक विस्तृत, विशिष्ट और मशीन-पठनीय हैं, इसलिए आईडीई कंपाइलर के आउटपुट को अनुक्रमित कर सकते हैं। कंपाइलर का मॉड्यूलर डिज़ाइन सोर्स कोड इंडेक्सिंग, सिंटैक्स चेकिंग और सामान्य रूप से रैपिड अनुप्रयोग का विकास सिस्टम से जुड़ी अन्य सुविधाओं की पेशकश कर सकता है। स्वचालित कोड रीफैक्टरिंग का समर्थन करने के लिए पार्स पेड़ भी अधिक उपयुक्त है, क्योंकि यह सीधे मूल स्रोत कोड का प्रतिनिधित्व करता है।

क्लैंग केवल C-जैसी भाषाओं को संकलित करता है, जैसे C, C++, Objective-C, और Objective-C++। कई मामलों में, क्लैंग जीसीसी को आवश्यकतानुसार बदल सकता है, पूरे टूलचैन पर कोई अन्य प्रभाव नहीं पड़ता है।[citation needed] यह आमतौर पर उपयोग किए जाने वाले अधिकांश जीसीसी विकल्पों का समर्थन करता है। एक फोरट्रान परियोजना, फ्लैंग 2022 में प्रगति पर थी। हालांकि, अन्य भाषाओं, जैसे एडा (प्रोग्रामिंग भाषा) के लिए, एलएलवीएम जीसीसी या किसी अन्य कंपाइलर फ्रंट एंड पर निर्भर रहता है।

फ्लैंग - फोरट्रान

NVIDIA और पोर्टलैंड समूह द्वारा फ्लैंग प्रोजेक्ट फोरट्रान समर्थन जोड़ता है।[20] फ्लैंग के विकास संस्करण प्रगति पर थे as of November 2022 और इसे एलएलवीएम प्रोजेक्ट से डाउनलोड किया जा सकता है; संस्करण 15.0 की घोषणा की गई थी।[21]


प्रदर्शन और जीसीसी अनुकूलता

बजना संकलन htop

बजना जीसीसी के साथ संगत है।[8] इसका कमांड लाइन इंटरफेस जीसीसी के कई कमांड-लाइन_इंटरफेस#कमांड-लाइन_ऑप्शंस और विकल्पों को साझा करता है। क्लैंग कई जीएनयू भाषा एक्सटेंशन और आंतरिक कार्यों को लागू करता है, जिनमें से कुछ विशुद्ध रूप से अनुकूलता के लिए हैं। उदाहरण के लिए, भले ही क्लैंग परमाणु इंट्रिनिक्स को लागू करता है जो बिल्कुल C11 परमाणु संचालन के साथ मेल खाता है, यह जीसीसी के कार्यान्वयन को भी लागू करता है। __sync_* GCC और C++ मानक लाइब्रेरी के साथ अनुकूलता के लिए इंट्रिनिक्स|libstdc++. क्लैंग जीसीसी-जेनरेट किए गए वस्तु कोड के साथ अनुप्रयोग बाइनरी इंटरफ़ेस संगतता को भी बनाए रखता है। व्यवहार में, क्लैंग जीसीसी के लिए एक ड्रॉप-इन प्रतिस्थापन है।[22]

क्लैंग के डेवलपर्स का उद्देश्य जीसीसी जैसे प्रतिस्पर्धी कंपाइलर्स की तुलना में मेमोरी पदचिह्न को कम करना और संकलन गति में वृद्धि करना है। अक्टूबर 2007 में, उन्होंने रिपोर्ट दी कि क्लैंग ने कार्बन (एपीआई) पुस्तकालयों को जीसीसी की तुलना में दोगुनी तेजी से संकलित किया, जबकि लगभग एक-छठे जीसीसी की मेमोरी और डिस्क स्थान का उपयोग किया।[23] 2011 तक, क्लैंग संकलक प्रदर्शन में इस लाभ को बनाए रखता है।[24][25] 2014 के मध्य तक, क्लैंग अभी भी मिश्रित संकलन समय और कार्यक्रम प्रदर्शन बेंचमार्क में जीसीसी की तुलना में तेजी से संकलित करता है।[26] हालाँकि, 2019 तक, GCC की तुलना में Linux कर्नेल को संकलित करने में Clang काफी धीमा है जबकि LLVM को संकलित करने में थोड़ा तेज़ है।[27]

जबकि क्लैंग संकलन में जीसीसी की तुलना में ऐतिहासिक रूप से तेज रहा है, आउटपुट गुणवत्ता पिछड़ गई है। 2014 तक, क्लैंग-संकलित कार्यक्रमों का प्रदर्शन जीसीसी-संकलित कार्यक्रम के प्रदर्शन से पिछड़ गया, कभी-कभी बड़े कारकों (5.5x तक) द्वारा,[26]धीमे प्रदर्शन की पिछली रिपोर्टों की नकल करना।[24]तब से दोनों कंपाइलर अपने प्रदर्शन को बढ़ाने के लिए विकसित हुए हैं, अंतर कम होने के साथ:

  • नवंबर 2016 में जीसीसी 4.8.2 बनाम क्लैंग 3.4 के बीच परीक्षण फाइलों के एक बड़े दोहन पर तुलना से पता चलता है कि जीसीसी अच्छी तरह से अनुकूलित स्रोत कोड पर लगभग 17% से बेहतर प्रदर्शन करता है। परीक्षण के परिणाम कोड-विशिष्ट होते हैं, और अडॉप्टिमाइज्ड सी स्रोत कोड ऐसे अंतरों को उलट सकता है। इस प्रकार दो संकलक व्यापक रूप से तुलनीय प्रतीत होते हैं।[28][unreliable source]
  • आइस लेक (माइक्रोप्रोसेसर) पर 2019 में तुलना से पता चला है कि क्लैंग 10 द्वारा उत्पन्न कार्यक्रमों ने 41 अलग-अलग बेंचमार्क पर जीसीसी 10 के प्रदर्शन का 96% हासिल किया है (जबकि 22 जीते और उनमें से 19 हारे)।[27]


इंटरफ़ेस

libclang अपेक्षाकृत छोटा एपीआई प्रदान करते हुए एक सी इंटरफ़ेस प्रदान करता है। उजागर कार्यक्षमता में शामिल हैं: सार वाक्य रचना का पेड़ में स्रोत कोड को पार्स करना, एएसटी को लोड करना, एएसटी को पार करना, एएसटी के भीतर तत्वों के साथ स्रोत स्थानों को जोड़ना।

स्थिति इतिहास

यह तालिका क्लैंग इतिहास में केवल महत्वपूर्ण चरण और रिलीज़ प्रस्तुत करती है।

Date Highlights
11 July 2007 Clang frontend released under open-source licence
25 February 2009 Clang/LLVM can compile a working FreeBSD kernel.[29][30]
16 March 2009 Clang/LLVM can compile a working DragonFly BSD kernel.[31][32]
23 October 2009 Clang 1.0 released, with LLVM 2.6 for the first time.
December 2009 Code generation for C and Objective-C reach production quality. Support for C++ and Objective-C++ still incomplete. Clang C++ can parse GCC 4.2 libstdc++ and generate working code for non-trivial programs,[18] and can compile itself.[33]
2 February 2010 Clang self-hosting.[34]
20 May 2010 Clang latest version built the Boost C++ libraries successfully, and passed nearly all tests.[35]
10 June 2010 Clang/LLVM becomes integral part of FreeBSD, but default compiler is still GCC.[36]
25 October 2010 Clang/LLVM can compile a working modified Linux kernel.[37]
January 2011 Preliminary work completed to support the draft C++0x standard, with a few of the draft's new features supported in Clang development version.[38][11]
10 February 2011 Clang can compile a working HotSpot Java virtual machine.[24]
19 January 2012 Clang becomes an optional component in NetBSD cross-platform build system, but GCC is still default.[39]
29 February 2012 Clang 3.0 can rebuild 91.2% of the Debian archive.[40]
29 February 2012 Clang becomes default compiler in MINIX 3[41]
12 May 2012 Clang/LLVM announced to replace GCC in FreeBSD.[42]
5 November 2012 Clang becomes default compiler in FreeBSD 10.x on amd64/i386.[43]
18 February 2013 Clang/LLVM can compile a working modified Android Linux Kernel for Nexus 7.[44][45]
19 April 2013 Clang is C++11 feature complete.[46]
6 November 2013 Clang is C++14 feature complete.[47]
11 September 2014 Clang 3.5 can rebuild 94.3% of the Debian archive. The percentage of failures has dropped by 1.2% per release since January 2013, mainly due to increased compatibility with GCC flags.[48]
October 2016 Clang becomes default compiler for Android[49] (and later only compiler supported by Android NDK[50]).
13 March 2017 Clang 4.0.0 released
26 July 2017 Clang becomes default compiler in OpenBSD 6.2 on amd64/i386.[51]
7 September 2017 Clang 5.0.0 released
19 January 2018 Clang becomes default compiler in OpenBSD 6.3 on arm.[52]
5 March 2018 Clang is now used to build Google Chrome for Windows.[53]
8 March 2018 Clang 6.0.0 released
5 September 2018 Clang is now used to build Firefox for Windows.[54]
19 September 2018 Clang 7.0.0 released
20 March 2019 Clang 8.0.0 released
1 July 2019 Clang becomes default compiler in OpenBSD 6.6 on mips64.[55]
19 September 2019 Clang 9.0.0 released with official RISC-V target support.[56]
29 February 2020 Clang becomes the only C compiler in the FreeBSD base system, with the removal of GCC.[57]
24 March 2020 Clang 10.0.0 released
2 April 2020 Clang becomes default compiler in OpenBSD 6.7 on powerpc.[58]
12 October 2020 Clang 11.0.0 released
21 December 2020 Clang becomes default compiler in OpenBSD 6.9 on mips64el.[59]
14 April 2021 Clang 12.0.0 released
4 October 2021 Clang 13.0.0 released
25 March 2022 Clang 14.0.0 released
6 September 2022 Clang 15.0.0 released


यह भी देखें

संदर्भ

  1. "LLVM 2.1 Release Notes". llvm.org. LLVM Developer Group. September 27, 2007. Archived from the original on November 17, 2016. Retrieved April 30, 2018.
  2. "Releases". llvm / llvm-project repo. LLVM Developer Group. August 27, 2021. Archived from the original on September 12, 2021. Retrieved September 12, 2021 – via GitHub.com.
  3. 3.0 3.1 3.2 "LICENSE.TXT", llvm.org, LLVM Developer Group, archived from the original on November 11, 2020, retrieved September 24, 2019
  4. 4.0 4.1 4.2 "LLVM Developer Policy", llvm.org, LLVM Developer Group, § Copyright, License, and Patents, archived from the original on November 13, 2012, retrieved September 12, 2021
  5. "OpenMP Support". LLVM Project Blog. May 22, 2015. Archived from the original on March 26, 2016. Retrieved March 28, 2016.
  6. "C++ Heterogeneous-Compute Interface for Portability". GitHub. Archived from the original on June 27, 2020. Retrieved February 18, 2020.
  7. "Clang Language Extensions". Archived from the original on February 24, 2014. Retrieved November 8, 2017. In addition to the language extensions listed here, Clang aims to support a broad range of GCC extensions.
  8. 8.0 8.1 Clang - Features and Goals: GCC Compatibility, April 15, 2013, archived from the original on April 27, 2018, retrieved April 30, 2018
  9. "Clang Static Analyzer". LLVM. Archived from the original on April 30, 2018. Retrieved September 3, 2009.
  10. "Getting Involved with the Clang Project", clang.llvm.org, LLVM Developer Group, archived from the original on April 27, 2018, retrieved September 18, 2012, Clang is a subproject of the LLVM Project, but has its own mailing lists because the communities have people with different interests.
  11. 11.0 11.1 "C++ and C++'0x Support in Clang". LLVM. Archived from the original on July 4, 2013. Retrieved April 30, 2018.
  12. "Clang 6.0.0 Release Notes". LLVM. Archived from the original on February 23, 2019. Retrieved August 28, 2020.
  13. Treat, Adam (February 19, 2005). "mkspecs and patches for LLVM compile of Qt4". Qt4-preview-feedback (Mailing list). Archived from the original on October 4, 2011.
  14. Lattner, Chris (May 25, 2007). LLVM for OpenGL and other stuff (Slides). LLVM Developers' Meeting. Archived (PDF) from the original on May 8, 2016. Retrieved April 30, 2018.
  15. Zadeck, Kenneth (November 19, 2005). "Re: LLVM/GCC Integration Proposal". GCC development (Mailing list). Archived from the original on March 10, 2016. Retrieved July 25, 2016.
  16. 16.0 16.1 Naroff, Steve (May 25, 2007). New LLVM C Front-end (Slides). LLVM Developers' Meeting. Archived (PDF) from the original on April 3, 2019. Retrieved April 30, 2018.
  17. Lattner, Chris (July 11, 2007). "New LLVM C front-end: "clang"". cfe-dev (Mailing list). Archived from the original on March 26, 2020. Retrieved March 26, 2020.
  18. 18.0 18.1 Clang team, clang: a C language family frontend for LLVM Archived November 12, 2017, at the Wayback Machine
  19. "Clang: Utility and Applications: Library Based Architecture". Archived from the original on April 27, 2018. Retrieved April 30, 2018.
  20. "FLANG: NVIDIA Brings Fortran To LLVM". Archived from the original on May 20, 2017. Retrieved May 18, 2017.
  21. "Flang 15.0.0 (In-Progress) Release Notes". The Flang Compiler. November 27, 2022.
  22. Clang can often be used as a drop-in replacement for GCC, May 2020, archived from the original on May 8, 2020, retrieved May 9, 2020
  23. Clang - Features and Goals: Fast compiles and Low Memory Use, October 2007, archived from the original on April 27, 2018, retrieved April 30, 2018
  24. 24.0 24.1 24.2 Simonis, Volker (February 10, 2011). "Compiling the HotSpot VM with Clang". Archived from the original on February 18, 2011. Retrieved February 13, 2011. While the overall GCC compatibility is excellent and the compile times are impressive, the performance of the generated code is still lacking behind a recent GCC version.
  25. "Benchmarking LLVM & Clang Against GCC 4.5". Phoronix. April 21, 2010. Archived from the original on November 2, 2016. Retrieved February 13, 2011. Binaries from LLVM-GCC and Clang both struggled to compete with GCC 4.5.0 in the timed HMMer benchmark of a Pfam database search. LLVM-GCC and Clang were about 23% slower(...)Though LLVM / Clang isn't the performance champion at this point, both components continue to be under very active development and there will hopefully be more news to report in the coming months
  26. 26.0 26.1 "GCC 4.9 VS. LLVM Clang 3.5 Linux Compiler Benchmarks". OpenBenchmarking.org. April 14, 2014. Archived from the original on October 23, 2017. Retrieved June 25, 2014.
  27. 27.0 27.1 Michael Larabel (December 23, 2019). "LLVM Clang Achieves ~96% The Performance Of GCC On Intel Ice Lake". Archived from the original on January 15, 2021. Retrieved January 14, 2021.
  28. "Clang vs GCC - which produces better binaries?". stackoverflow.com. Archived from the original on June 1, 2017. Retrieved October 1, 2018.
  29. Divacky, Roman. "[Announce] clang/llvm can compile booting FreeBSD kernel on i386/amd64". Archived from the original on May 1, 2018. Retrieved April 30, 2018.
  30. Building FreeBSD with Clang, Wiki.freebsd.org, August 24, 2012, archived from the original on April 30, 2018, retrieved September 18, 2012
  31. Hornung, Alex. "llvm/clang once more". Archived from the original on April 30, 2018. Retrieved April 30, 2018.
  32. Clang, DragonFly BSD, archived from the original on April 30, 2018, retrieved September 18, 2012
  33. "Clang can compile LLVM and Clang". LLVM Project Blog. December 24, 2009. Archived from the original on April 26, 2012. Retrieved December 31, 2009.
  34. "Clang Successfully Self-Hosts". LLVM Project Blog. February 4, 2010. Archived from the original on April 26, 2012. Retrieved February 5, 2010.
  35. Gregor, Doug (May 20, 2010). "Clang++ Builds Boost!". LLVM Project Blog. Archived from the original on April 26, 2012. Retrieved May 21, 2010.
  36. Davis, Brad. "FreeBSD Status Reports April–June , 2010". Archived from the original on June 24, 2018. Retrieved April 30, 2018.
  37. Clang builds a working Linux Kernel (Boots to RL5 with SMP, networking and X, self hosts), Lists.cs.uiuc.edu, archived from the original on September 7, 2015, retrieved September 18, 2012
  38. Gregor, Douglas (January 26, 2011). "New C++0x feature support in Clang" (Mailing list). Archived from the original on January 30, 2011. Retrieved January 29, 2011.
  39. Sonnenberger, Jörg (January 19, 2012). "Status of NetBSD and LLVM". Archived from the original on September 21, 2016. Retrieved February 26, 2014.
  40. Ledru, Sylvestre. "Rebuild of the Debian archive with clang". Archived from the original on May 1, 2018. Retrieved April 30, 2018.
  41. "Official Minix 3 website: News". Archived from the original on December 17, 2009. Retrieved December 7, 2012.
  42. Gerzo, Daniel (May 12, 2012). "FreeBSD Quarterly Status Report January–March , 2012" (Mailing list). Archived from the original on February 18, 2018. Retrieved May 14, 2012.
  43. Davis, Brooks (November 5, 2012). "Heads Up: Clang now the default on x86" (Mailing list). Archived from the original on April 30, 2018. Retrieved November 7, 2012.
  44. Webster, Behan (February 18, 2013). "LLVMLinux: Compiling Android with LLVM" (PDF). Archived from the original (PDF) on May 12, 2014. Retrieved May 11, 2013.
  45. Tinti, Vinicius (March 17, 2013). "LLVMLinux: Nexus 7". Archived from the original on June 11, 2014. Retrieved May 11, 2013.
  46. Du Toit, Stefanus. "Clang is C++11 feature complete as of *just now*!". Archived from the original on September 24, 2019. Retrieved April 20, 2013.
  47. "[llvm-project] Revision 194194". Archived from the original on November 18, 2018. Retrieved April 30, 2018.
  48. Ledru, Sylvestre. "Rebuild of Debian using Clang 3.5.0". Archived from the original on May 1, 2018. Retrieved April 30, 2018.
  49. "NDK Revision History | Android Developers". developer.android.com. Archived from the original on March 6, 2018. Retrieved March 6, 2018.
  50. "NDK Revision History | Android NDK | Android Developers". Android Developers. Archived from the original on April 5, 2019. Retrieved April 30, 2018.
  51. Nagy, Robert (July 26, 2017). "switch the default compiler on amd64 and i386 to clang" (Mailing list). Archived from the original on October 25, 2018. Retrieved September 30, 2017.
  52. Kettenis, Mark (January 19, 2018). "Switch the default compiler on armv7 to clang" (Mailing list). Archived from the original on April 8, 2022. Retrieved August 27, 2020.
  53. "Clang is now used to build Chrome for Windows". blog.llvm.org. March 5, 2018. Archived from the original on March 5, 2018. Retrieved April 7, 2018.
  54. "Firefox Beta 63.0beta, See All New Features, Updates and Fixes". www.mozilla.org. Archived from the original on April 19, 2021. Retrieved March 18, 2020.
  55. Hankala, Visa (July 1, 2019). "Switch the default compiler on octeon to clang" (Mailing list). Archived from the original on April 8, 2022. Retrieved August 27, 2020.
  56. "LLVM 9 Releases With Official RISC-V Target Support, Asm Goto, Clang 9, And More". riscv.org. September 26, 2019. Archived from the original on December 28, 2019. Retrieved September 26, 2019.
  57. "FreeBSD svn commit r358454". Archived from the original on March 10, 2020. Retrieved March 7, 2020.
  58. Kettenis, Mark (April 2, 2020). "Switch the default compiler on powerpc to clang" (Mailing list). Archived from the original on April 8, 2022. Retrieved August 27, 2020.
  59. Hankala, Visa (December 21, 2020). "Make clang the default compiler on loongson" (Mailing list). Archived from the original on January 13, 2021. Retrieved January 1, 2021.


बाहरी संबंध

  • No URL found. Please specify a URL here or add one to Wikidata.