GCC 13 ಕಂಪೈಲರ್ ಸೂಟ್‌ನ ಬಿಡುಗಡೆ

ಒಂದು ವರ್ಷದ ಅಭಿವೃದ್ಧಿಯ ನಂತರ, ಉಚಿತ GCC 13.1 ಕಂಪೈಲರ್ ಸೂಟ್‌ನ ಬಿಡುಗಡೆಯನ್ನು ಬಿಡುಗಡೆ ಮಾಡಲಾಗಿದೆ, ಇದು ಹೊಸ GCC 13.x ಶಾಖೆಯಲ್ಲಿ ಮೊದಲ ಮಹತ್ವದ ಬಿಡುಗಡೆಯಾಗಿದೆ. ಹೊಸ ಬಿಡುಗಡೆ ಸಂಖ್ಯೆಯ ಯೋಜನೆಯಡಿಯಲ್ಲಿ, ಆವೃತ್ತಿ 13.0 ಅನ್ನು ಅಭಿವೃದ್ಧಿಯ ಸಮಯದಲ್ಲಿ ಬಳಸಲಾಯಿತು, ಮತ್ತು GCC 13.1 ಬಿಡುಗಡೆಗೆ ಸ್ವಲ್ಪ ಮೊದಲು, GCC 14.0 ಶಾಖೆಯನ್ನು ಈಗಾಗಲೇ ಫೋರ್ಕ್ ಮಾಡಲಾಗಿದೆ, ಇದರಿಂದ GCC 14.1 ರ ಮುಂದಿನ ಮಹತ್ವದ ಬಿಡುಗಡೆಯು ರೂಪುಗೊಳ್ಳುತ್ತದೆ.

ಪ್ರಮುಖ ಬದಲಾವಣೆಗಳು:

  • ಮಾಡುಲಾ-2 ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಯಲ್ಲಿ ಕಾರ್ಯಕ್ರಮಗಳನ್ನು ನಿರ್ಮಿಸಲು GCC ಮುಂಭಾಗವನ್ನು ಅಳವಡಿಸಿಕೊಂಡಿದೆ. ಇದು PIM2, PIM3, ಮತ್ತು PIM4 ಉಪಭಾಷೆಗಳಿಗೆ ಅನುಗುಣವಾಗಿರುವ ಬಿಲ್ಡಿಂಗ್ ಕೋಡ್ ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ, ಜೊತೆಗೆ ಆ ಭಾಷೆಗೆ ಅಂಗೀಕರಿಸಲ್ಪಟ್ಟ ISO ಮಾನದಂಡವಾಗಿದೆ.
  • gccrs ಯೋಜನೆಯಿಂದ (GCC ರಸ್ಟ್) ಸಿದ್ಧಪಡಿಸಲಾದ ರಸ್ಟ್ ಭಾಷಾ ಸಂಕಲನದ ಅನುಷ್ಠಾನದೊಂದಿಗೆ ಮುಂಭಾಗವನ್ನು GCC ಮೂಲ ಮರಕ್ಕೆ ಸೇರಿಸಲಾಗಿದೆ. ಪ್ರಸ್ತುತ ವೀಕ್ಷಣೆಯಲ್ಲಿ, ಫೋರ್ಂಟೆಂಡ್ ಅನ್ನು ಪ್ರಾಯೋಗಿಕ ಎಂದು ಗುರುತಿಸಲಾಗಿದೆ ಮತ್ತು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ. ಮುಂಭಾಗವು ಸಿದ್ಧವಾದ ನಂತರ (ಮುಂದಿನ ಬಿಡುಗಡೆಯಲ್ಲಿ ನಿರೀಕ್ಷಿಸಲಾಗಿದೆ), LLVM ಅಭಿವೃದ್ಧಿಗಳನ್ನು ಬಳಸಿಕೊಂಡು ನಿರ್ಮಿಸಲಾದ rustc ಕಂಪೈಲರ್ ಅನ್ನು ಸ್ಥಾಪಿಸುವ ಅಗತ್ಯವಿಲ್ಲದೆಯೇ ರಸ್ಟ್ ಪ್ರೋಗ್ರಾಂಗಳನ್ನು ಕಂಪೈಲ್ ಮಾಡಲು ಪ್ರಮಾಣಿತ GCC ಟೂಲ್ಕಿಟ್ ಅನ್ನು ಬಳಸಬಹುದು.
  • ಲಿಂಕ್-ಇನ್-ಸ್ಟೆಪ್ ಆಪ್ಟಿಮೈಸೇಶನ್ (LTO) ಬಹು ಥ್ರೆಡ್‌ಗಳಾದ್ಯಂತ ಸಮಾನಾಂತರ ನಿರ್ಮಾಣ ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸಲು GNU ಮೇಕ್ ಪ್ರಾಜೆಕ್ಟ್‌ನಿಂದ ನಿರ್ವಹಿಸಲ್ಪಡುವ ಜಾಬ್ ಸರ್ವರ್ (ಜಾಬ್ ಸರ್ವರ್) ಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸುತ್ತದೆ. GCC ಯಲ್ಲಿ, ಸಂಪೂರ್ಣ ಪ್ರೋಗ್ರಾಂ (WPA, ಸಂಪೂರ್ಣ-ಪ್ರೋಗ್ರಾಂ ವಿಶ್ಲೇಷಣೆ) ಸಂದರ್ಭದಲ್ಲಿ LTO ಆಪ್ಟಿಮೈಸೇಶನ್ ಸಮಯದಲ್ಲಿ ಕೆಲಸವನ್ನು ಸಮಾನಾಂತರಗೊಳಿಸಲು ಜಾಬ್ ಸರ್ವರ್ ಅನ್ನು ಬಳಸಲಾಗುತ್ತದೆ. ಹೆಸರಿಸಲಾದ ಪೈಪ್‌ಗಳನ್ನು (--jobserver-style=fifo) ಜಾಬ್ ಸರ್ವರ್‌ನೊಂದಿಗೆ ಸಂವಹನ ಮಾಡಲು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ.
  • ಸ್ಥಾಯೀ ವಿಶ್ಲೇಷಕ (-ಫ್ಯಾನಲೈಸರ್) 20 ಹೊಸ ಡಯಾಗ್ನೋಸ್ಟಿಕ್ ಚೆಕ್‌ಗಳನ್ನು ನೀಡುತ್ತದೆ, ಇದರಲ್ಲಿ "-Wanalyzer-out-of-bounds", "-Wanalyzer-allocation-size", "-Wanalyzer-deref-before-check", "-Wanalyzer- infinite -ಪುನರಾವರ್ತನೆ" -ವಾನಲೈಜರ್-ಜಂಪ್-ಥ್ರೂ-ಶೂನ್ಯ", "-ವಾನಲೈಜರ್-ವಾ-ಲಿಸ್ಟ್-ಲೀಕ್".
  • JSON ಆಧಾರಿತ SARIF ಸ್ವರೂಪದಲ್ಲಿ ಡಯಾಗ್ನೋಸ್ಟಿಕ್ಸ್ ಅನ್ನು ಔಟ್‌ಪುಟ್ ಮಾಡುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ. ಸ್ಥಿರ ವಿಶ್ಲೇಷಣೆಯ ಫಲಿತಾಂಶಗಳನ್ನು (GCC -fanalyzer) ಪಡೆಯಲು, ಹಾಗೆಯೇ ಎಚ್ಚರಿಕೆಗಳು ಮತ್ತು ದೋಷಗಳ ಬಗ್ಗೆ ಮಾಹಿತಿಯನ್ನು ಪಡೆಯಲು ಹೊಸ ಸ್ವರೂಪವನ್ನು ಬಳಸಬಹುದು. "-fdiagnostics-format=sarif-stderr|sarif-file|json-stderr|json|json-file" ಆಯ್ಕೆಯೊಂದಿಗೆ ಸಕ್ರಿಯಗೊಳಿಸುವಿಕೆಯನ್ನು ಮಾಡಲಾಗುತ್ತದೆ, ಅಲ್ಲಿ "json" ನೊಂದಿಗೆ ಆಯ್ಕೆಗಳು JSON ಫಾರ್ಮ್ಯಾಟ್‌ನ GCC-ನಿರ್ದಿಷ್ಟ ರೂಪಾಂತರದಲ್ಲಿ ಔಟ್‌ಪುಟ್‌ಗೆ ಕಾರಣವಾಗುತ್ತವೆ. .
  • ಶೂನ್ಯ ಪಾಯಿಂಟರ್‌ಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು nullptr ಸ್ಥಿರತೆಯಂತಹ C23 C ಮಾನದಂಡದಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ, ವೇರಿಯಬಲ್ ಸಂಖ್ಯೆಯ ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳೊಂದಿಗೆ ಪಟ್ಟಿಗಳನ್ನು ಬಳಸಲು ಸುಲಭಗೊಳಿಸುತ್ತದೆ (ವೇರಿಯಾಡಿಕ್), enums ಸಾಮರ್ಥ್ಯಗಳನ್ನು ವಿಸ್ತರಿಸುವುದು, noreturn ಗುಣಲಕ್ಷಣ, ಬಳಕೆಯನ್ನು ಅನುಮತಿಸುತ್ತದೆ constexpr ಮತ್ತು auto ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವಾಗ, ಟೈಪ್‌ಆಫ್ ಮತ್ತು ಟೈಪ್‌ಆಫ್_ಅನ್‌ಕ್ವಾಲ್, ಹೊಸ ಕೀವರ್ಡ್‌ಗಳ ಅಲಿಗ್ನಾಸ್, ಅಲಿಗ್ನಾಫ್, ಬೂಲ್, ಫಾಲ್ಸ್, ಸ್ಟ್ಯಾಟಿಕ್_ಸರ್ಟ್, ಥ್ರೆಡ್_ಲೋಕಲ್ ಮತ್ತು ಟ್ರೂ, ಪ್ರಾರಂಭದಲ್ಲಿ ಖಾಲಿ ಆವರಣಗಳನ್ನು ಅನುಮತಿಸಿ.
  • C++23 ಮಾನದಂಡದಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಕೆಲವು ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ, ಉದಾಹರಣೆಗೆ ಸಂಯುಕ್ತ ಅಭಿವ್ಯಕ್ತಿಗಳ ಕೊನೆಯಲ್ಲಿ ಗುರುತುಗಳನ್ನು ಇರಿಸುವ ಸಾಮರ್ಥ್ಯ, char8_t ಪ್ರಕಾರದೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆ, #ಎಚ್ಚರಿಕೆ ಪ್ರಿಪ್ರೊಸೆಸರ್ ನಿರ್ದೇಶನ, (\u{}, \o{} ನಿಂದ ಪ್ರತ್ಯೇಕಿಸಲಾಗಿದೆ , \x{}), ಮತ್ತು ಹೆಸರಿಸಲಾದ ('\N{ಲ್ಯಾಟಿನ್ ಕ್ಯಾಪಿಟಲ್ ಲೆಟರ್ A}') ಎಸ್ಕೇಪ್ ಸೀಕ್ವೆನ್ಸ್‌ಗಳು, ಸ್ಟ್ಯಾಟಿಕ್ ಆಪರೇಟರ್(), ಸ್ಟ್ಯಾಟಿಕ್ ಆಪರೇಟರ್[], ಎಕ್ಸ್‌ಪ್ರೆಶನ್‌ಗಳಲ್ಲಿ ಸಮಾನತೆ ಆಪರೇಟರ್, constexpr ಬಳಕೆಯ ಮೇಲಿನ ಕೆಲವು ನಿರ್ಬಂಧಗಳನ್ನು ಹೊರತುಪಡಿಸಿ, ಬೆಂಬಲ ಮೂಲ ಪಠ್ಯಗಳಲ್ಲಿ UTF-8 ಗಾಗಿ.
  • ಹೆಡರ್ ಫೈಲ್ ಬೆಂಬಲವನ್ನು ಸೇರಿಸುವಂತಹ libstdc++ ನಲ್ಲಿ C++20 ಮತ್ತು C++23 ಮಾನದಂಡಗಳಿಗೆ ಸುಧಾರಿತ ಪ್ರಾಯೋಗಿಕ ಬೆಂಬಲ ಮತ್ತು std:: ಫಾರ್ಮ್ಯಾಟ್, ವಿಸ್ತೃತ ಹೆಡರ್ ಫೈಲ್ ಸಾಮರ್ಥ್ಯಗಳು , ಹೆಚ್ಚುವರಿ ಫ್ಲೋಟಿಂಗ್ ಪಾಯಿಂಟ್ ಪ್ರಕಾರಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಹೆಡರ್ ಫೈಲ್‌ಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ ಮತ್ತು .
  • ಫೈಲ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್ ಅನ್ನು ಪೂರ್ಣಾಂಕ ವೇರಿಯೇಬಲ್‌ನಲ್ಲಿ ರವಾನಿಸಲಾಗಿದೆ ಎಂದು ಡಾಕ್ಯುಮೆಂಟ್‌ಗೆ ಹೊಸ ಫಂಕ್ಷನ್ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಸೇರಿಸಲಾಗಿದೆ: "__attribute__((fd_arg(N)))", "__attribute__((fd_arg_read(N)))", ಮತ್ತು "__attribute__((fd_arg_write(N) )) ". ಫೈಲ್ ಡಿಸ್ಕ್ರಿಪ್ಟರ್‌ಗಳೊಂದಿಗೆ ತಪ್ಪಾದ ಕೆಲಸವನ್ನು ಪತ್ತೆಹಚ್ಚಲು ನಿರ್ದಿಷ್ಟಪಡಿಸಿದ ಗುಣಲಕ್ಷಣಗಳನ್ನು ಸ್ಥಿರ ವಿಶ್ಲೇಷಕದಲ್ಲಿ (-ಫ್ಯಾನಲೈಸರ್) ಬಳಸಬಹುದು.
  • ಹೊಸ ಗುಣಲಕ್ಷಣ "__attribute__((ಅನುಮಾನ(EXPR)))" ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ, ಇದರೊಂದಿಗೆ ನೀವು ಕಂಪೈಲರ್‌ಗೆ ಅಭಿವ್ಯಕ್ತಿ ನಿಜವೆಂದು ಹೇಳಬಹುದು ಮತ್ತು ಕಂಪೈಲರ್ ಅಭಿವ್ಯಕ್ತಿಯನ್ನು ಮೌಲ್ಯಮಾಪನ ಮಾಡದೆಯೇ ಈ ಸತ್ಯವನ್ನು ಬಳಸಬಹುದು.
  • ರಚನೆಗಳಲ್ಲಿ ಹೊಂದಿಕೊಳ್ಳುವ ರಚನೆಯ ಅಂಶವನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವಾಗ ನಡವಳಿಕೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಲು "-fstrict-flex-arrays=[level]" ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ (Flexible Array Members, ರಚನೆಯ ಕೊನೆಯಲ್ಲಿ ಅನಿರ್ದಿಷ್ಟ ಗಾತ್ರದ ಒಂದು ಶ್ರೇಣಿ, ಉದಾಹರಣೆಗೆ, "int b[] ")
  • ಎಣಿಕೆಯ ಪ್ರಕಾರ ಮತ್ತು ಪೂರ್ಣಾಂಕ ಪ್ರಕಾರದ ನಡುವೆ ಹೊಂದಾಣಿಕೆಯಿಲ್ಲದಿದ್ದರೆ ಎಚ್ಚರಿಕೆಗಳನ್ನು ನೀಡಲು "-ವೆನಮ್-ಇಂಟ್-ಮಿಸ್ಮ್ಯಾಚ್" ಫ್ಲ್ಯಾಗ್ ಅನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
  • ಫೋರ್ಟ್ರಾನ್ ಫ್ರಂಟ್-ಎಂಡ್ ಅಂತಿಮಗೊಳಿಸುವಿಕೆಗೆ ಸಂಪೂರ್ಣ ಬೆಂಬಲವನ್ನು ಹೊಂದಿದೆ.
  • ಸಾಮಾನ್ಯ ಕಾರ್ಯಗಳು ಮತ್ತು ಪ್ರಕಾರಗಳಿಗೆ (ಜೆನೆರಿಕ್ಸ್) ಬೆಂಬಲವನ್ನು ಗೋ ಭಾಷೆಗೆ ಮುಂಭಾಗಕ್ಕೆ ಸೇರಿಸಲಾಗಿದೆ ಮತ್ತು Go 1.18 ಭಾಷೆಗೆ ಪ್ಯಾಕೇಜ್‌ಗಳೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆಯನ್ನು ಖಾತ್ರಿಪಡಿಸಲಾಗಿದೆ.
  • AArch64 ಬ್ಯಾಕೆಂಡ್ CPU ಆಂಪಿಯರ್-1A (ampere1a), ಆರ್ಮ್ ಕಾರ್ಟೆಕ್ಸ್-A715 (ಕಾರ್ಟೆಕ್ಸ್-a715), ಆರ್ಮ್ ಕಾರ್ಟೆಕ್ಸ್-X1C (ಕಾರ್ಟೆಕ್ಸ್-x1c), ಆರ್ಮ್ ಕಾರ್ಟೆಕ್ಸ್-X3 (ಕಾರ್ಟೆಕ್ಸ್-x3), ಮತ್ತು ಆರ್ಮ್ ನಿಯೋವರ್ಸ್ V2 (ನಿಯೋವರ್ಸ್ -v2) ಅನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. . "armv9.1-a", "armv9.2-a", ಮತ್ತು "armv9.3-a" ಆರ್ಗ್ಯುಮೆಂಟ್‌ಗಳಿಗೆ ಬೆಂಬಲವನ್ನು "-march=" ಆಯ್ಕೆಗೆ ಸೇರಿಸಲಾಗಿದೆ. FEAT_LRCPC, FEAT_CSSC ಮತ್ತು FEAT_LSE2 ಪ್ರೊಸೆಸರ್ ವಿಸ್ತರಣೆಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
  • STAR-MC1 (star-mc1), ಆರ್ಮ್ ಕಾರ್ಟೆಕ್ಸ್-X1C (ಕಾರ್ಟೆಕ್ಸ್-x1c), ಮತ್ತು ಆರ್ಮ್ ಕಾರ್ಟೆಕ್ಸ್-M85 (ಕಾರ್ಟೆಕ್ಸ್-m85) CPU ಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ARM ಆರ್ಕಿಟೆಕ್ಚರ್ ಬ್ಯಾಕೆಂಡ್‌ಗೆ ಸೇರಿಸಲಾಗಿದೆ.
  • Intel Raptor Lake, Meteor Lake, Sierra Forest, Grand Ridge, Emerald Rapids, Granite Rapids, ಮತ್ತು AMD Zen 86 (znver4) ಪ್ರೊಸೆಸರ್‌ಗಳಿಗೆ ಬೆಂಬಲವನ್ನು x4 ಬ್ಯಾಕೆಂಡ್‌ಗೆ ಸೇರಿಸಲಾಗಿದೆ. ಇಂಟೆಲ್ ಪ್ರೊಸೆಸರ್‌ಗಳಲ್ಲಿ ಪ್ರಸ್ತಾಪಿಸಲಾದ AVX-IFMA, AVX-VNNI-INT8, AVX-NE-CONVERT, CMPccXADD, AMX-FP16, PREFETCHI, RAO-INT, ಮತ್ತು AMX-ಕಾಂಪ್ಲೆಕ್ಸ್ ಸೂಚನಾ ಸೆಟ್ ಆರ್ಕಿಟೆಕ್ಚರ್ ವಿಸ್ತರಣೆಗಳನ್ನು ಅಳವಡಿಸಲಾಗಿದೆ. SSE2 ಹೊಂದಿರುವ ಸಿಸ್ಟಂಗಳಲ್ಲಿ C ಮತ್ತು C++ ಗಾಗಿ, __bf16 ಪ್ರಕಾರವನ್ನು ಒದಗಿಸಲಾಗಿದೆ.
  • ಎಎಮ್‌ಡಿ ರೇಡಿಯನ್ ಜಿಪಿಯುಗಳಿಗೆ (ಜಿಸಿಎನ್) ಕೋಡ್ ಜನರೇಷನ್ ಬ್ಯಾಕೆಂಡ್ ಓಪನ್‌ಎಂಪಿ/ಓಪನ್‌ಎಸಿಸಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಸುಧಾರಿಸಲು ಎಎಮ್‌ಡಿ ಇನ್‌ಸ್ಟಿಂಕ್ಟ್ MI200 ವೇಗವರ್ಧಕಗಳನ್ನು ಬಳಸುವ ಸಾಮರ್ಥ್ಯವನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ. SIMD ಸೂಚನೆಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಸುಧಾರಿತ ವೆಕ್ಟರೈಸೇಶನ್.
  • LoongArch ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ಗಾಗಿ ಗಮನಾರ್ಹವಾಗಿ ವಿಸ್ತರಿಸಿದ ಬ್ಯಾಕೆಂಡ್ ಸಾಮರ್ಥ್ಯಗಳು.
  • RISC-V ಬ್ಯಾಕೆಂಡ್‌ನಲ್ಲಿ CPU T-Head ನ XuanTie C906 (thead-c906) ಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ. RISC-V ವೆಕ್ಟರ್ ಎಕ್ಸ್‌ಟೆನ್ಶನ್ ಇಂಟ್ರಿನ್ಸಿಕ್ 0.11 ನಿರ್ದಿಷ್ಟತೆಯಲ್ಲಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ವೆಕ್ಟರ್ ಹ್ಯಾಂಡ್ಲರ್‌ಗಳಿಗೆ ಅಳವಡಿಸಲಾದ ಬೆಂಬಲ. 30 RISC-V ವಿವರಣೆ ವಿಸ್ತರಣೆಗಳಿಗೆ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ.
  • "-ಹಂಚಿಕೊಂಡ" ಆಯ್ಕೆಯೊಂದಿಗೆ ಹಂಚಿದ ವಸ್ತುಗಳನ್ನು ರಚಿಸುವಾಗ, "-Ofast", "-ffast-math", ಅಥವಾ "-funsafe-math-optimizations" ಆಪ್ಟಿಮೈಸೇಶನ್‌ಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿದರೆ ಫ್ಲೋಟಿಂಗ್ ಪಾಯಿಂಟ್ ಪರಿಸರವನ್ನು ಸೇರಿಸಿದ ನಂತರ ಸ್ಟಾರ್ಟ್‌ಅಪ್ ಕೋಡ್ ಅನ್ನು ಇನ್ನು ಮುಂದೆ ಸೇರಿಸಲಾಗುವುದಿಲ್ಲ. .
  • DWARF ಡೀಬಗ್ ಮಾಡುವಿಕೆ ಫಾರ್ಮ್ಯಾಟ್‌ಗೆ ಬೆಂಬಲವನ್ನು ಬಹುತೇಕ ಎಲ್ಲಾ ಕಾನ್ಫಿಗರೇಶನ್‌ಗಳಲ್ಲಿ ಅಳವಡಿಸಲಾಗಿದೆ.
  • Zstandard ಅಲ್ಗಾರಿದಮ್ ಬಳಸಿ ಡೀಬಗ್ ಮಾಹಿತಿಯನ್ನು ಕುಗ್ಗಿಸಲು "-gz=zstd" ಆಯ್ಕೆಯನ್ನು ಸೇರಿಸಲಾಗಿದೆ. ಅಸಮ್ಮತಿಸಿದ ಡೀಬಗ್ ಮಾಹಿತಿ ಸಂಕುಚಿತ ಮೋಡ್ "-gz=zlib-gnu" ಗೆ ಬೆಂಬಲವನ್ನು ತೆಗೆದುಹಾಕಲಾಗಿದೆ.
  • ಓಪನ್‌ಎಂಪಿ 5.2 (ಓಪನ್ ಮಲ್ಟಿ-ಪ್ರೊಸೆಸಿಂಗ್) ಗೆ ಆರಂಭಿಕ ಬೆಂಬಲವನ್ನು ಸೇರಿಸಲಾಗಿದೆ ಮತ್ತು ಓಪನ್‌ಎಂಪಿ 5.0 ಮತ್ತು 5.1 ಮಾನದಂಡಗಳ ಅನುಷ್ಠಾನವು ಮುಂದುವರಿದಿದೆ, ಮಲ್ಟಿ-ಕೋರ್ ಮತ್ತು ಹೈಬ್ರಿಡ್ (ಸಿಪಿಯು + ಜಿಪಿಯು / ಡಿಎಸ್‌ಪಿ) ಸಿಸ್ಟಮ್‌ಗಳಲ್ಲಿ ಸಮಾನಾಂತರ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ವಿಧಾನಗಳನ್ನು ಅನ್ವಯಿಸಲು API ಗಳು ಮತ್ತು ವಿಧಾನಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ. ಹಂಚಿಕೆಯ ಮೆಮೊರಿ ಮತ್ತು ವೆಕ್ಟರೈಸೇಶನ್ ಘಟಕಗಳು (SIMD).
  • 1980 ರ ದಶಕದಲ್ಲಿ ರಚಿಸಲಾದ ಮತ್ತು dbx ಡೀಬಗ್ಗರ್‌ನಲ್ಲಿ ಬಳಸಲಾದ ಲೆಗಸಿ STABS ಡೀಬಗ್ ಮಾಹಿತಿ ಶೇಖರಣಾ ಸ್ವರೂಪಕ್ಕೆ ಅಸಮ್ಮತಿಸಲಾಗಿದೆ (-gstabs ಮತ್ತು -gxcoff ಆಯ್ಕೆಗಳೊಂದಿಗೆ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ).
  • ಸೋಲಾರಿಸ್ 11.3 ಗಾಗಿ ಅಸಮ್ಮತಿಸಿದ ಬೆಂಬಲ (ಈ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಅನ್ನು ಬೆಂಬಲಿಸುವ ಕೋಡ್ ಅನ್ನು ಭವಿಷ್ಯದ ಬಿಡುಗಡೆಯಲ್ಲಿ ತೆಗೆದುಹಾಕಲಾಗುತ್ತದೆ).

ಮೂಲ: opennet.ru

ಕಾಮೆಂಟ್ ಅನ್ನು ಸೇರಿಸಿ