GCC 9.1

மே 3 அன்று, GCC இன் ஒன்பதாவது பதிப்பின் முதல் பொது வெளியீடு நடந்தது: GCC 9.1.
எட்டாவதுடன் ஒப்பிடும்போது இது பல குறிப்பிடத்தக்க மேம்பாடுகள் மற்றும் சேர்த்தல்களைக் கொண்டுள்ளது
பதிப்பு.

பொதுவான மாற்றங்கள்

விருப்பங்கள்
  • அளவை ஏற்கும் கட்டளைகள் இப்போது 64-பிட் மதிப்புகள் மற்றும் அளவைக் குறிப்பிட பின்னொட்டுகளை ஆதரிக்கின்றன;
  • விருப்பம் சேர்க்கப்பட்டது - ஃபிளைவ்-பேட்ச்சிங், டைனமிக், குறியீடு மாற்றுதலுக்கு அழிவுகரமானதாக இருக்கும் மேம்படுத்தல்களைக் கட்டுப்படுத்த;
  • கட்டளை ஷெல்லில் தானாக நிறைவு செய்வதை ஆதரிக்க --நிறைவு விருப்பம் சேர்க்கப்பட்டது;
  • கம்பைலர் கண்டறிதலில் இப்போது வரி எண்கள் அடங்கும் (-fno-diagnostics-ஷோ-லைன்-எண்கள்) மற்றும்
    வகை தகவல் (fno-diagnostics-ஷோ-லேபிள்கள்);
  • விருப்பம் சேர்க்கப்பட்டது -fdiagnostics-format=json JSON வடிவத்தில் கண்டறிதல்களை வெளியிடுவதற்கு;
  • சீரமைப்பைக் குறிப்பிடுவதற்கான விருப்பங்கள் (-Falign-செயல்பாடுகள், எடுத்துக்காட்டாக) இப்போது ஓரிரு சீரமைப்பு விருப்பங்களை ஏற்கலாம்;
  • கோப்புகளின் பட்டியலை வடிகட்டுவதற்கான விருப்பங்கள் சேர்க்கப்பட்டன (-fprofile-filter-files, -fprofile-விலக்கு-கோப்புகள்), இது விவரக்குறிப்பாளரால் கருவி செய்யப்படுகிறது;
  • AddressSanitizer இப்போது ஸ்டேக்கில் உள்ள மாறிகளுக்கு தவறான அணுகல்களைப் பிடிக்க மிகவும் கச்சிதமான சீரமைப்பைப் பயன்படுத்துகிறது;
  • பல வெளியீடு மேம்பாடுகள் -fopt-தகவல்;
  • விருப்பம் சேர்க்கப்பட்டது -fsave-optimization-record தேர்வுமுறை அறிக்கையை ஒரு கோப்பில் சேமிக்க;
  • விருப்பம் சேர்க்கப்பட்டது -ஃபிபா-ஸ்டாக்-சீரமைப்பு и -fipa-குறிப்பு-முகவரி.
புதிய உள்ளமைக்கப்பட்ட அம்சங்கள்
புதிய பண்பு
மற்ற

இது தொடர்பான பல குறியீடு உருவாக்க மேம்பாடுகள்:

  • சுவிட்ச் கட்டுமானங்களின் தலைமுறை;
  • இடை-செயல்முறை மேம்படுத்தல்கள்;
  • விவரக்குறிப்பு தகவலின் அடிப்படையில் தேர்வுமுறை;
  • சட்டசபை கட்டத்தில் தேர்வுமுறை (LTO);

மேலும் gcov இன் உள் வடிவம் இப்போது JSON மற்றும் புதிய விருப்பமாகும் --பயன்படுத்த-சூடான-வண்ணங்கள் அவை எவ்வளவு அடிக்கடி பயன்படுத்தப்படுகின்றன என்பதன் அடிப்படையில் குறியீட்டின் வண்ணக் கோடுகளை உள்ளடக்கியது.

மொழிகளை

செயல்படுத்தலின் தரம் மற்றும் முழுமை OpenACC C, C++ மற்றும் Fortran ஆகிய மொழிகள் தொடர்ந்து மேம்பட்டு வருகின்றன.

சி போன்ற மொழிகள்
  • OpenMP 5.0க்கான பகுதி ஆதரவு செயல்படுத்தப்பட்டது;
  • அம்சம் சேர்க்கப்பட்டது __பில்டின்_கன்வெக்டர்;
  • எச்சரிக்கை சேர்க்கப்பட்டது நிரம்பிய-உறுப்பினர்;
  • ஏற்கனவே உள்ள பல எச்சரிக்கைகளை மேம்படுத்துதல்;
  • ஒரு மேக்ரோவிற்கு தவறான எண்ணிக்கையிலான வாதங்களை அனுப்பும்போது பிழை உரை இப்போது மேக்ரோவின் அறிவிப்பை உள்ளடக்கியது;
  • எழுத்துப்பிழை திருத்த பரிந்துரைகளுக்கான மேம்பாடுகள்.
C
  • -std=c2x (எதிர்கால C தரநிலை)க்கான ஒரு வாதத்துடன் _Static_assert ஐ ஆதரிக்கவும்;
  • புதிய எச்சரிக்கை -முழு-மதிப்பு, இது abs() போன்ற செயல்பாடுகளுக்கு தவறான வாத வகையைப் பிடிக்கிறது.
சி ++
  • புதிய எச்சரிக்கைகள்: -மறுக்கப்பட்ட-நகல்,
    -வினிட்-லிஸ்ட்-வாழ்நாள்,
    - தேவையற்ற நகர்வு,
    -Wpessimizing-move,
    -வகுப்பு-மாற்றம்;
  • எதிர்கால தரநிலையில் இருந்து புதிய அம்சங்களை செயல்படுத்தும் பணி நடந்து வருகிறது C++2a;
  • முன்பக்கம் இப்போது பல மூலக் குறியீடு கூறுகளைப் பற்றிய மிகவும் துல்லியமான தகவலைச் சேமிக்கிறது, இது கண்டறியும் முறைகளில் மேலும் விரிவான தகவலைக் காண்பிக்க உங்களை அனுமதிக்கிறது;
  • ஓவர்லோடட் செயல்பாடுகள், பைனரி ஆபரேட்டர்கள், செயல்பாட்டு அழைப்புகள் மற்றும் வடிவமைப்பு சரங்களுக்கான மேம்படுத்தப்பட்ட கண்டறிதல்;
  • பல பிரபலமான பிழைகள் (விடுபட்ட அடைப்புக்குறிகள், பெயர்வெளிகள், எழுத்துப்பிழைகள் போன்றவை) சில மேம்பாட்டு சூழல்களால் ஆதரிக்கப்படும் தானியங்கு திருத்தங்கள் சேர்க்கப்பட்டது.
libstdc++
  • C++17 செயல்படுத்தல் இனி சோதனைக்குரியது அல்ல;
  • இணையான அல்காரிதம்கள் சேர்க்கப்பட்டது, , , ஏ இனி -lstdc++fs தேவையில்லை;
  • C++2a க்கான மேம்படுத்தப்பட்ட சோதனை ஆதரவு ( , , std::bind_front, etc.);
  • விண்டோஸில் கோப்பு ஸ்ட்ரீம்களைத் திறப்பதற்கான ஆதரவு, அதன் பாதைகளில் சார் அல்லாத எழுத்துக்கள் உள்ளன;
  • ஆரம்ப ஆதரவு விண்டோஸில்;
  • நெட்வொர்க்கிங் TSக்கான ஆரம்ப ஆதரவு.
D

D மொழி பதிப்பு 2.076 GCC இல் சேர்க்கப்பட்டுள்ளது.

FORTRAN
  • ஒத்திசைவற்ற I/O க்கான முழு ஆதரவு;
  • MINLOC மற்றும் MAXLOC க்கு செயல்படுத்தப்பட்ட BACK வாதம்;
  • செயல்படுத்தப்பட்ட FINDLOC மற்றும் IS_CONTIGUS செயல்பாடுகள்;
  • கலப்பு எண்களின் கூறுகளை அணுகுவதற்கான தொடரியல் செயல்படுத்தப்பட்டது: c%re மற்றும் c%im;
  • str%len மற்றும் a%kind தொடரியல் செயல்படுத்தப்பட்டது;
  • செயல்படுத்தப்பட்ட C விளக்கங்கள் மற்றும் ISO_Fortran_binding.h தலைப்பு;
  • வாதங்களில் ஒன்று NaN ஆக இருக்கும் போது MAX மற்றும் MIN செயல்பாடுகளின் முடிவுக்கான தளர்வான தேவைகள்;
  • விருப்பம் சேர்க்கப்பட்டது -fdec- அடங்கும்;
  • உத்தரவு சேர்க்கப்பட்டது பில்டின்.
libgccjit

மற்ற

பல கட்டிடக்கலை மற்றும் OS-குறிப்பிட்ட மாற்றங்கள்.

ஆதாரம்: linux.org.ru

கருத்தைச் சேர்