জিসিসি ১১.১ ইতিমধ্যে প্রকাশিত হয়েছে, এটি এটির সবচেয়ে গুরুত্বপূর্ণ সংবাদ এবং পরিবর্তন

উন্নয়নের এক বছর পরে, জিসিসি 11.1 সংকলক স্যুট নতুন সংস্করণ প্রকাশিত হয়েছেনতুন জিসিসি ১১.x শাখায় প্রথম উল্লেখযোগ্য প্রকাশ। নতুন সংস্করণ নম্বরকরণ প্রকল্পের আওতায় 11 সংস্করণটি বিকাশের সময় ব্যবহার করা হয়েছিল এবং জিসিসি 11.0 প্রকাশের অল্প আগেই জিসিসি 11.1 এর একটি শাখা ইতিমধ্যে জিসিসি 12.0 এর পরবর্তী প্রধান সংস্করণ গঠনের জন্য প্রস্তুত করা হয়েছিল।

GCC 11.1 ডিফল্ট ডিবাগ ফাইল ফর্ম্যাট DWARF 5 এ স্থানান্তরিত হতে পারে, সি ++ 17 স্ট্যান্ডার্ডের ডিফল্ট অন্তর্ভুক্তি ("-std = gnu ++ 17"), সি ++ 20 স্ট্যান্ডার্ডের সাথে সামঞ্জস্যের উল্লেখযোগ্য উন্নতি, সি ++ 23 এর জন্য পরীক্ষামূলক সহায়তা, ভবিষ্যতের স্ট্যান্ডার্ড সম্পর্কিত উন্নতি সি ভাষা (সি 2 এক্স), নতুন কর্মক্ষমতা অপ্টিমাইজেশন।

জিসিসি 11.1 প্রধান নতুন বৈশিষ্ট্য

সি ++ ভাষার জন্য ডিফল্ট মোডটি সি ++ 17 স্ট্যান্ডার্ড ব্যবহার করার জন্য পরিবর্তন করা হয়েছেপূর্বে প্রস্তাবিত সি ++ 14 এর পরিবর্তে। প্যারামিটার হিসাবে অন্য টেমপ্লেটগুলি ব্যবহার করে এমন টেম্পলেটগুলি প্রক্রিয়া করার সময় নতুন সি ++ 17 আচরণটি নির্বাচন করে অক্ষম করা সম্ভব (-ফনো-নতুন-টিটিপি-ম্যাচিং)।

হার্ডওয়্যার ত্বরণ জন্য সমর্থন যোগ করা হয়েছে অ্যাড্রেসানাইটিজার সরঞ্জামটি, যা আপনাকে মুক্ত মেমরি অঞ্চলগুলিতে অ্যাক্সেস, বরাদ্দকৃত বাফারের সীমা অতিক্রম করে এবং মেমরির সাথে কাজ করার সময় কিছু অন্যান্য ধরণের ত্রুটিগুলি নির্ধারণ করতে দেয়। হার্ডওয়্যার ত্বরণ বর্তমানে AArch64 আর্কিটেকচারের জন্য উপলব্ধ এবং লিনাক্স কার্নেলটি সংকলন করার সময় এর ব্যবহারের উপর দৃষ্টি নিবদ্ধ করে।

উপস্থাপন করা হয় যে অন্য নতুনত্ব হলেন নতুন আইপিএ-মোড্রেফ পাস যুক্ত হওয়ার সাথে সাথে পদ্ধতির মধ্যে অপ্টিমাইজেশন এবং উন্নতিগুলি (-fipa-modref) ফাংশন কলগুলিতে পার্শ্ব প্রতিক্রিয়াগুলি ট্র্যাক করতে এবং বিশ্লেষণের নির্ভুলতা উন্নত করতে। এছাড়াও এ আইপিএ-আইসিএফ পাসের উন্নত বাস্তবায়ন (-ফিপা-আইসিএফ), যা সংকলনের মেমরির খরচ হ্রাস করে এবং একীভূত ফাংশনগুলির সংখ্যা বৃদ্ধি করে যার জন্য কোডের অভিন্ন ব্লকগুলি মার্জ করা।

El প্রোফাইল চালিত অপ্টিমাইজেশন ইঞ্জিন (পিজিও), উন্নত "-fprofile- মান" মোড পরোক্ষ কলগুলির জন্য আরও পরামিতিগুলি ট্র্যাক করে।

এছাড়াও ওপেনএমপি 5.0 মানকটির ধারাবাহিক প্রয়োগ হাইলাইট করা হয় (ওপেন মাল্টি-প্রসেসিং), এতে কার্যনির্বাহী নির্দেশনা এবং অ-ইউনিফর্ম লুপগুলি ব্যবহার করার দক্ষতার জন্য প্রাথমিক সমর্থন যোগ করা হয়েছে ওপেনএমপি বিল্ডগুলিতে। OMP_TARGET_OFFLOAD পরিবেশ পরিবর্তনশীল এখন সমর্থিত।

সি, সি ++ এবং ফোর্টরান ভাষাগুলির জন্য সরবরাহিত ওপেনসিসি ২.l সমান্তরাল প্রোগ্রামিং স্পেসিফিকেশন বাস্তবায়ন, যা জিপিইউ এবং এনভিআইডিআইএ পিটিএক্সের মতো বিশেষায়িত প্রসেসরের অফলোড অপারেশনগুলির জন্য সরঞ্জাম নির্ধারণ করে, উন্নত করা হয়েছে।

সি পরিবারের ভাষার জন্য, একটি নতুন বৈশিষ্ট্য "ন_স্ট্যাক_প্রোটেক্টর" প্রয়োগ করা হয়েছে, ফাংশনগুলি চিহ্নিত করার জন্য ডিজাইন করা হয়েছে যার জন্য স্ট্যাক সুরক্ষা সক্ষম করা উচিত নয় ("-ফস্ট্যাক-প্রটেক্টর")। বরাদ্দকরণ এবং ফ্রি মেমরির জন্য জোড়া কল শনাক্ত করার জন্য সমর্থন সহ "malloc" বৈশিষ্ট্যটি প্রসারিত করা হয়েছে, যা সাধারণত মেমরি ত্রুটিগুলি সনাক্ত করার জন্য স্ট্যাটিক পার্সারে ব্যবহৃত হয় (মেমরি ফাঁস, ফ্রি ব্যবহারের পরে ডাবল কল, ফ্রি ফাংশন ইত্যাদি) এবং সংকলক সতর্কতা "-Wmismatched-dealloc", "-Wmismatched- নতুন-মুছুন" এবং " -ফ্রি-ননহিপ-অবজেক্ট "বেমানান ডিওলোকেশন এবং ডিওলোকেশন অপারেশনগুলির প্রতিবেদন করা।

ডিবাগিং তথ্য উত্পন্ন করার সময়, ডিওয়ার্ট 5 ফর্ম্যাটটি ডিফল্ট হিসাবে ব্যবহৃত হয়, যা পূর্ববর্তী সংস্করণের তুলনায়, 25% বেশি কমপ্যাক্টের ডিবাগিং ডেটার উত্পন্ন করতে সহায়তা করে। সম্পূর্ণ DWARF 5 সমর্থনের জন্য বাইনুটিলগুলি কমপক্ষে 2.35.2 সংস্করণ প্রয়োজন।

বর্ধিত থ্রেডস্যানিটাইজার মোড ক্ষমতা (-ফসানাইটাইজ = থ্রেড), হ্যাঁ থেকেe বিকল্প রানটাইম এবং পরিবেশের জন্য সমর্থন যোগ করে, পাশাপাশি লিনাক্স কার্নেলের মধ্যে বর্ণের অবস্থা গতিশীলভাবে সনাক্ত করতে কার্নেল কনকুরেন্সি স্যানিটাইজার (কেসিএসএএন) ডিবাগিং সরঞ্জামের জন্য সমর্থন। নতুন বিকল্পগুলি "tparam tsan-split-volatile" এবং "–param tsan-Equipment-func-प्रविष्टী-প্রস্থান" যুক্ত করা হয়েছে।

ভেক্টরাইজারটি ফাংশনের সমস্ত সামগ্রীর অ্যাকাউন্টিং এবং নিয়ন্ত্রণ ফ্লো চার্ট (সিএফজি) এর পূর্ববর্তী ব্লকগুলির ছেদগুলি এবং রেফারেন্সের সাথে যুক্ত দক্ষতার অতিরিক্ত প্রসেসিং সরবরাহ করে।

অপ্টিমাইজারের শর্তাধীন ক্রিয়াকলাপগুলির একটি সিরিজকে পরিবর্তিত অভিব্যক্তিতে রূপান্তর করার ক্ষমতা রয়েছে, যেখানে একই চলকটির সাথে তুলনা করা হয়। ভবিষ্যতে, বিট টেস্ট নির্দেশাবলীর সাহায্যে পরিবর্তনটি এক্সপ্রেশনটি এনকোড করা যেতে পারে (এই রূপান্তরটি নিয়ন্ত্রণ করতে, "-ফিট-পরীক্ষা" বিকল্পটি যুক্ত করা হয়েছে)।

সি ++ এর জন্য, সি ++ 20 স্ট্যান্ডার্ডে প্রস্তাবিত পরিবর্তন এবং উদ্ভাবনের একটি অংশ বাস্তবায়িত হয়েছে, যার মধ্যে ভার্চুয়াল ফাংশনগুলি "কনস্টিভাল ভার্চুয়াল", এনুম ক্লাস ব্যবহার করে এবং গণনা করার জন্য বস্তুর জীবনচক্র বন্ধ করার জন্য সিউডো-ডেস্ট্রয়ার রয়েছে including "নতুন" এক্সপ্রেশনটিতে একটি অ্যারের আকার।

আপনি যদি এটি সম্পর্কে আরও জানতে চান, আপনি বিশদটি পরীক্ষা করতে পারেন নিম্নলিখিত লিঙ্ক। 


আপনার মন্তব্য দিন

আপনার ইমেল ঠিকানা প্রকাশিত হবে না। প্রয়োজনীয় ক্ষেত্রগুলি দিয়ে চিহ্নিত করা *

*

*

  1. ডেটার জন্য দায়বদ্ধ: মিগুয়েল অ্যাঞ্জেল গাটান
  2. ডেটার উদ্দেশ্য: নিয়ন্ত্রণ স্প্যাম, মন্তব্য পরিচালনা।
  3. আইনীকরণ: আপনার সম্মতি
  4. তথ্য যোগাযোগ: ডেটা আইনি বাধ্যবাধকতা ব্যতীত তৃতীয় পক্ষের কাছে জানানো হবে না।
  5. ডেটা স্টোরেজ: ওসেন্টাস নেটওয়ার্কস (ইইউ) দ্বারা হোস্ট করা ডেটাবেস
  6. অধিকার: যে কোনও সময় আপনি আপনার তথ্য সীমাবদ্ধ করতে, পুনরুদ্ধার করতে এবং মুছতে পারেন।