جی سی سی 11.1 پہلے ہی جاری کیا جاچکا ہے ، یہ اس کی سب سے اہم خبریں اور تبدیلیاں ہیں

ترقی کے ایک سال کے بعد ، جی سی سی 11.1 مرتب سویٹ نیا ورژن جاری، نئی جی سی سی 11. ایکس برانچ میں پہلی اہم ریلیز۔ نئی ورژن نمبر دینے کی اسکیم کے تحت ، ورژن 11.0 کو ترقی کے دوران استعمال کیا گیا تھا ، اور جی سی سی 11.1 کے اجراء سے کچھ دیر قبل ، جی سی سی 12.0 کی شاخ پہلے ہی جی سی سی 12.1 کا اگلا بڑا ورژن تشکیل دینے کے لئے تشکیل دی گئی تھی۔

جی سی سی 11.1 کا ڈیفالٹ ڈیبگ فائل فارمیٹ DWARF 5 میں منتقلی کا امکان ہے، C ++ 17 معیار ("-std = gnu ++ 17") کی ڈیفالٹ شمولیت ، C ++ 20 کے معیار کے ساتھ مطابقت میں نمایاں بہتری ، C ++ 23 کے لئے تجرباتی تعاون ، مستقبل کے معیار سے متعلق بہتری C زبان (C2x) ، کارکردگی کی نئی اصلاح۔

جی سی سی 11.1 اہم نئی خصوصیات

C ++ زبان کا ڈیفالٹ وضع C ++ 17 معیار کو استعمال کرنے کے لئے تبدیل کردیا گیا ہے، اس کے بجائے پہلے تجویز کردہ C ++ 14 کی بجائے۔ دوسرے ٹیمپلیٹس کو پیرامیٹر کے بطور استعمال کرنے والے ٹیمپلیٹس کی پروسیسنگ کرتے وقت نئے C ++ 17 سلوک کو منتخب طور پر غیر فعال کرنا ممکن ہے (-نوائے ٹی ٹی پی میچنگ)

ہارڈویئر ایکسلریشن کے لئے مزید مدد شامل کی گئی ایڈریس سینیٹائزر ٹول کا ، جو آپ کو میموری کے ساتھ کام کرتے وقت آزاد میموری والے علاقوں تک رسائی ، مختص شدہ بفر کی حدود سے تجاوز کرنے ، اور کچھ دیگر قسم کی غلطیوں کے حقائق کا تعین کرنے کی سہولت دیتا ہے۔ فی الحال ، ہارڈویئر ایکسلریشن صرف AArch64 فن تعمیر کے لئے دستیاب ہے اور لینکس کے دانا کو مرتب کرتے وقت اس کے استعمال پر مرکوز ہے۔

ایک اور نیاپن جو پیش کیا گیا ہے وہ ہیں اصلاحات اور طریقہ کار کے مابین بہتری ، جیسے کہ ایک نیا IPA-Modref پاس شامل کیا گیا تھا (-fipa-modref) فنکشن کالوں میں ضمنی اثرات کو ٹریک کرنے اور تجزیہ کی درستگی کو بہتر بنانا۔ اس کے علاوہ بھی a IPA-ICF پاس پر عملدرآمد میں بہتری (-fipa-icf) ، جو تالیف میموری کی کھپت کو کم کرتا ہے اور متفقہ افعال کی تعداد میں اضافہ کرتا ہے جس کے لئے کوڈ کے ایک جیسے بلاکس کو ضم کیا جاتا ہے۔

El پروفائل پر مبنی آپٹمائزیشن انجن (پی جی او) ، بہتر "-فائل - قدر" موڈ بالواسطہ کالوں کے لئے مزید پیرامیٹرز کو ٹریک کرتے ہوئے۔

بھی اوپن ایم پی 5.0 معیار پر عمل درآمد کو اجاگر کیا گیا ہے (اوپن ملٹی پروسیسنگ) ، جس میں اسائنمنٹ ڈائریکٹیو اور غیر یکساں لوپ کو استعمال کرنے کی صلاحیت کے ل initial ابتدائی مدد شامل کی اوپن ایم پی کی تعمیر میں OMP_TARGET_OFFLOAD ماحولیاتی متغیر اب تعاون یافتہ ہے۔

سی ، سی ++ اور فورٹرن زبانوں کے لئے فراہم کردہ اوپن اے سی سی 2.6 کے متوازی پروگرامنگ تفصیلات پر عمل درآمد ، جو جی پی یوز اور NVIDIA PTX جیسے خصوصی پروسیسروں کو آف لوڈنگ آپریشن کے اوزار کی وضاحت کرتا ہے ، کو بہتر بنایا گیا ہے۔

سی فیملی کی زبانوں کے ل a ، ایک نئی صفت "no_stack_protector" لاگو کیا گیا ہے ، ایسے افعال کی نشاندہی کرنے کے لئے ڈیزائن کیا گیا ہے جس کے لئے اسٹیک پروٹیکشن کو فعال نہیں کیا جانا چاہئے ("-Fstack-protector") "malloc" وصف میں توسیع کی گئی ہے اور میموری کو مختص کرنے اور مفت میموری کرنے کے ل. جوڑے کی نشاندہی کرنے میں معاونت کے ساتھ توسیع کی گئی ہے، جو عام میموری غلطیوں (میموری لیک ، مفت کے بعد استعمال ، مفت فعل میں ڈبل کالز وغیرہ) کا پتہ لگانے کے لئے مستحکم پارسر میں استعمال ہوتا ہے اور مرتب تنبیہ "-Wmismatched-dealloc" ، "-Wmismatched-new-delete" اور " غیر آزاد deheocation اور deallocation آپریشنوں کی اطلاع.

ڈیبگنگ سے متعلق معلومات کو تیار کرتے وقت ، DWARF 5 فارمیٹ کو بطور ڈیفالٹ استعمال کیا جاتا ہے ، جو ، پچھلے ورژن کے مقابلے میں ، ڈیبگنگ ڈیٹا کی تخلیق کی اجازت دیتا ہے جو 25٪ زیادہ کومپیکٹ ہے۔ مکمل ڈورف 5 سپورٹ میں کم از کم ورژن 2.35.2 بینوٹائل کی ضرورت ہوتی ہے۔

بہتر کردہ تھریڈ سینیٹائزر وضع کی صلاحیتیں (-فسانیتائز = تھریڈ) ، چونکہ ہاںاور متبادل رن ٹائم اور ماحول کے لئے مدد شامل کرتا ہے ، نیز کرنل کنکورونسی سینیٹیزر (کے سی ایس اے این) ڈیبگنگ ٹول کی حمایت کے ساتھ ساتھ ، لینکس کے دانا میں نسل کی صورتحال کو متحرک طور پر پتہ لگانے کے لئے۔ نئے اختیارات "–param tsan-dish-volatile" اور "–param tsan-Equipment-func-entry -स्थान" شامل کردیئے گئے ہیں۔

ویکٹرائزر فنکشن کے تمام مشمولات کا حساب کتاب اور کنٹرول فلو چارٹ (CFG) میں گذشتہ بلاکس کے چوراہوں اور حوالوں سے وابستہ صلاحیتوں کی اضافی پروسیسنگ فراہم کرتا ہے۔

آپٹائائزر میں یہ شرط ہے کہ وہ مشروط آپریشنوں کی ایک سیریز کو تبدیلی کے تاثرات میں تبدیل کرے ، جس میں ایک ہی متغیر کا موازنہ کیا جائے۔ مستقبل میں ، بٹ ٹیسٹ ہدایات (اس تبادلوں پر قابو پانے کے لئے ، "-فٹ - ٹیسٹ" آپشن شامل کیا گیا ہے) کا استعمال کرتے ہوئے تبدیلی کا اظہار انکوڈ کیا جاسکتا ہے۔

C ++ کے لئے ، C ++ 20 معیار میں تجویز کردہ تبدیلیوں اور بدعات کا ایک حصہ لاگو کیا گیا ہے ، بشمول ورچوئل فنکشنز "کونٹیووال ورچوئل" ، اینوم کلاس کا استعمال کرتے ہوئے اور محاسبہ کرنے والے اشیاء کی زندگی کے چکر کو ختم کرنے کے لئے چھدم ڈسٹریٹرز۔ "نئے" کے اظہار میں ایک صف کی شکل۔

اگر آپ اس کے بارے میں مزید جاننا چاہتے ہیں، آپ اس میں تفصیلات چیک کرسکتے ہیں مندرجہ ذیل لنک 


مضمون کا مواد ہمارے اصولوں پر کاربند ہے ادارتی اخلاقیات. غلطی کی اطلاع دینے کے لئے کلک کریں یہاں.

تبصرہ کرنے والا پہلا ہونا

اپنی رائے دیں

آپ کا ای میل ایڈریس شائع نہیں کیا جائے گا. ضرورت ہے شعبوں نشان لگا دیا گیا رہے ہیں کے ساتھ *

*

*

  1. اعداد و شمار کے لئے ذمہ دار: میگل اینگل گاتین
  2. ڈیٹا کا مقصد: اسپیم کنٹرول ، تبصرے کا انتظام۔
  3. قانون سازی: آپ کی رضامندی
  4. ڈیٹا کا مواصلت: اعداد و شمار کو تیسری پارٹی کو نہیں بتایا جائے گا سوائے قانونی ذمہ داری کے۔
  5. ڈیٹا اسٹوریج: اوکیسٹس نیٹ ورکس (EU) کے میزبان ڈیٹا بیس
  6. حقوق: کسی بھی وقت آپ اپنی معلومات کو محدود ، بازیافت اور حذف کرسکتے ہیں۔