Tags Posts tagged with "gcc"

gcc

przez -
5 2759
GNU - logo

Jakub Jelinek ogłosił dostępność GCC 5.1, zestawu kompilatorów do różnych języków programowania.

Zmiany, jakie zaszły:

  • Kompilator GCC C otrzymał domyślny standard GNU11 (C11), zamiast starego GNU89 (C89).
  • Pojawiło się sporo zmian międzyproceduralnych, jak: optymalizacja wirtualnych tabel, wykrywanie i optymalizacja zmiennych tylko do odczytu i wiele więcej
  • Zmniejszono zużycie pamięci i czas linkowania, podczas włączonej optymalizacji w czasie linkowania (LTO)
  • Dodano pełne wsparcie dla OpenMP 4.0, w językach C, C++ i Fortran. Zaimplementowano wstępną obsługę układów Intel Xeon Phi
  • GCC C i C++ otrzymały wsparcie dla współbieżnego interfejsu programowania Intel Cilk Plus
  • Dodano dwie procedury preprocesora: _has_include i _has_include_next, które to dodają pliki nagłówkowe plików, w momencie jeżeli są one dostępne w systemie
  • Pojawiło się sporo nowości z C++14
  • Biblioteka libstdc++ posiada pełne wsparcie dla C++11 i eksperymentalną obsługę C++14
  • Dodano pełne wsparcie dla języka Go 1.4.2
  • Dodano wstępne wsparcie dla kompilacji Just-In-Time (JIT), poprzez nową bibliotekę libgccjit
  • Udoskonalono generowanie kodu architektury AArch64 dla procesorów Cortex-A57 i A53. Dodano także wsparcie dla procesorów: ARM Cortex-A72, Cavium ThunderX i Applied Micro X-Gene 1
  • Dodano wsparcie dla instrukcji AVX-512, które będą dostępne w procesorach serwerowych Intel Skylake
  • Dodano wsparcie dla architektur MIPS Release 3, Release 5 i Release 6. Prócz tego pojawiła się obsługa procesorów Cavium Octeon 3 i Imagination P5600
  • System DragonFlyBSD wspiera w pełni GCC

przez -
4 855
GNU - logo

Jakub Jelinek ogłosił wydanie zestawu kompilatorów GCC 4.9.0. GCC początkowo rozwijany był jako kompilator języka C, obecnie jest zbiorem kompilatorów wielu języków, m.in. C, C++, Fortran, Ada, Objective-C pod różne procesory: x86, AVR, ARM, MIPS, PPC, SPARC. Z wersji na wersji dodawane jest wsparcie dla nowszych standardów języków, wsparcie dla nowszych technologii procesorów oraz ulepszane są algorytmy optymalizacji kodu.

Najważniejsze zmiany, jakie zaszły:

  • Local Register Allocator, wprowadzony w GCC 4.8.0, dla architektur x86 i amd64, jest od teraz używany także w AArch64, ARM, S/290 i ARC, oraz opcjonalnie na PowerPC i RX.
  • Udoskonalono dewirtualizację C++ i usunięto ograniczenia skalowalności w wewnętrznych procedurach optymalizacyjnych. Naprawiono błędy w LTO.
  • Dodano obsługę języka Google Go 1.2.1
  • Pojawiła się wstępna obsługę specyfikacji C++14
  • Dodano obsługę standardu OpenMP 4.0 dla C i C++, a także częściową implementację rozszerzenia Cilk Plus dla współbieżnych danych i zadań
  • Dodano obsługę instrukcji AVX-512. Ulepszono wsparcie dla procesorów Silvermont, a także dodano optymalizacje dla nadchodzących procesorów Broadwell
  • Udoskonalono optymalizację i wydajność dla procesorów Excavator (AMD Bulldozer 4 generacji)
  • Dodano wsparcie dla platformy little-endian powerpc64le-linux
  • Dodano kolorowanie składnia podczas debuggowania. Pojawiła się opcja -fdiagnostics-color=auto, której włączenie pozwoli na kolorowanie pojawiających się kodów w terminalu

przez -
21 678
LLVM

Wczoraj mogliśmy przeczytać o propozycji wprowadzenia zmian do GCC, a także skrytykowaniu LLVM przez Richarda Stallman. Obie wiadomości są dość ważne, ponieważ już w 2005 roku padła propozycja integracji LLVM lub jego wielu funkcji w kompilatorze GCC. Chris Lattner, który w tamtym okresie pracował dla Apple i zajmował się kodem LLVM, chciał aby część kodu nowego kompilatora trafiła do kodu GCC na licencji GPL.

Pierwsza wiadomość o integracji pochodzi z 18 listopada 2005 roku: LLVM/GCC Integration Proposal, natomiast już 22 listopada tego samego roku był gotowy odpowiedni patch: The actual LLVM integration patch.

Jednakże pod dłuższej debacie deweloperzy GCC odmówili przyjęcia kodu, bo:

  • LLVM był pisany w C++, a nie w C
  • Nie podobała się modularna struktura oraz duża ilość bibliotek

Patrząc jednak w czasie, sporo się od tamtej pory zmieniło:

przez -
75 699
LLVM

Richard Stallman wypowiedział się w wątku, gdzie Eric S. Raymond nawołuje do zmian w kompilatorze GCC. Osoby zaznajomione z poglądami szefa Free Software Foundation raczej nie będą zdziwione jego wypowiedzią. Otóż uważa on, iż samo istnienie LLVM jest tragicznym krokiem wstecz dla całej społeczności wolnego oprogramowania, ponieważ nie jest zgodne z ideologią copyleft, a kod może być dowolnie użytkowany w niewolnych kompilatorach. W międzyczasie wspomniana jest firma Apple, jako największy wróg nienawidzący tak wolności, że w ich sklepie żadna aplikacja nie może posiadać wolnej licencji.

przez -
29 692
Eric S. Raymond

Eric S. Raymond, programista i promotor wolnego oprogramowania, wezwał Free Software Foundation do wprowadzenia zmian w kompilatorze GCC. Od długiego czasu trwa debata nad tym, który z kompilatorów: GCC czy LLVM/Clang jest lepszy. Z jednej strony restrykcyjna licencja GCC uniemożliwia jego bardzo dynamiczny rozwój, z drugiej strony chroni przed wieloma zakusami. LLVM/Clang natomiast to projekt oparty na licencji BSD, dzięki której w ciągu ostatnich 10 lat stał się bardzo popularny, a z jego udziałem powstało bardzo dużo znakomitych projektów.

Eric S. Raymond pragnie, aby GCC stał się bardziej liberalnym projektem, szczególnie jeżeli chodzi o system wtyczek. LLVM dzięki swojej licencji doczekał się sporej liczby dodatków, w tym wielu niewolnych. Eric zauważa, że przy obecnym tempie rozwoju, LLVM/Clang zdominuje GCC w ciągu 3 – 5 lat, jeżeli Free Software Foundation nie zmieni swojego podejścia do jego rozwoju.

przez -
2 404

ARM Holdings wypuściło dzisiaj łatkę, w której dodano obsługę procesora Cortex-A12 w kompilatorze GCC. Architektura Cortex-A12 jest praktycznie identyczna z rdzeniami Cortex-A7 i Cortex-A15. Pojawiła się jednakże nowe opcja: -mcpu=cortex-a12, razem z RTX costs tables oraz innymi udoskonaleniami. Wszystko było testowane na Qemu i oczekuje aktualnie na akceptację.

Polecane

Company of Heroes 2

0 181
Dobra wiadomość! Gra Company of Heroes 2 jest obecnie dostępny za darmo w Humble Store. Opracowany przez Relic Entertainment i pierwotnie wydany dla Windows...
ataribox

0 165
Mozilla Firefox

1 339