Insinyur Meta (Facebook) pada hari Senin mengumumkan CIR, representasi perantara baru yang diusulkan (IR) untuk front-end kompiler Clang C/C++ LLVM yang didasarkan pada representasi MLIR.
CIR adalah IR baru mereka yang merupakan kependekan dari "Clang IR" atau "C/C++ IR" dan merupakan upaya open-source lain dari Meta/Facebook yang mereka harapkan pada akhirnya akan di-upstream. Mereka berharap IR baru untuk Dentang ini akan mengarah pada peningkatan diagnostik untuk pemrograman C++ modern, memungkinkan lebih banyak pengoptimalan tingkat tinggi C++, dan mengatasi kekurangan lainnya dengan IR AST / LLVM Clang. Terinspirasi oleh representasi perantara HIR/MIR Swift`s SIL dan Rust`s, Meta berharap CIR dapat memberikan peningkatan serupa untuk pemrogram C++.
Di antara tujuan yang ditetapkan untuk CIR adalah untuk memberikan diagnostik yang lebih baik untuk kebenaran / keamanan / kinerja. Ini pada akhirnya dapat mengarah pada program C++ yang lebih aman. Disebutkan dalam pengumuman CIR, "Keamanan / Bug: Tim Google Chrome mencatat bahwa sekitar 70% dari bug keamanan tingkat tinggi mereka adalah masalah ketidakamanan memori. Setengahnya adalah bug penggunaan setelah bebas. Menggunakan std::opsional untuk mengilustrasikannya, CIR dapat memperkenalkan instruksi untuk deref opsional (cir.std.optional.deref) dan mendiagnosisnya sebagai berbahaya jika tidak didominasi oleh pemeriksaan apakah objek berisi nilai (cir.std.optional.has_value)."
Mereka yang tertarik untuk mempelajari lebih lanjut tentang CIR dapat mengunjungi pengumuman Wacana LLVM. Kode CIR dan dokumentasi dalam bentuk saat ini dihosting oleh Inkubator Facebook di GitHub.
Pendiri LLVM Chris Lattner sudah mengomentari upaya CIR, beberapa kali menyebutkan dia "penggemar super" dari upaya ini. Dia juga berharap itu menjadi proyek inkubator LLVM dan membuat lebih banyak pengembang LLVM mengerjakan kode ini dan akhirnya sebagai solusi hulu.
CIR pasti akan menjadi upaya LLVM lain yang menarik untuk diperhatikan untuk meningkatkan tumpukan kompiler open-source terkemuka ini.
Itulah berita seputar Meta Mengembangkan IR Baru Untuk LLVMs Clang C/C++ Compiler Dengan Kecepatan, Keamanan Lebih Baik, semoga bermanfaat. Disadur dari Phoronix.com.