Join the community today
Register Now

GCC 7.3.1 update

Discussion in 'CentOS, Redhat & Oracle Linux News' started by eva2000, May 26, 2018.

  1. eva2000

    eva2000 Administrator Staff Member

    37,354
    8,162
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +12,563
    Local Time:
    7:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    Centmin Mod 123.09beta01 and higher support compiling Nginx with alternate GCC and Clang compiler versions. Looks like devtoolset-7 yum packages have an update from GCC 7.2.1 to GCC 7.3.1 :)
    Code (Text):
    yum list updates --disableplugin=priorities,versionlock --enablerepo=remi                     
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
     * base: linux.mirrors.es.net
     * epel: mirrors.develooper.com
     * extras: linux.mirrors.es.net
     * remi: mirrors.mediatemple.net
     * rpmforge: mirror.hmc.edu
     * updates: linux.mirrors.es.net
    Updated Packages
    devtoolset-7-binutils.x86_64                                                                                                     2.28-11.el7                                                                                                centos-sclo-rh
    devtoolset-7-gcc.x86_64                                                                                                          7.3.1-5.4.el7                                                                                              centos-sclo-rh
    devtoolset-7-gcc-c++.x86_64                                                                                                      7.3.1-5.4.el7                                                                                              centos-sclo-rh
    devtoolset-7-libstdc++-devel.x86_64                                                                                              7.3.1-5.4.el7                                                                                              centos-sclo-rh
    devtoolset-7-runtime.x86_64                                                                                                      7.1-4.el7                                                                                                  centos-sclo-rh

    Centmin Mod Nginx compiled with old GCC 7.2.1
    Centmin Mod Nginx compiled with newer GCC 7.3.1. (FYI, new 123.09beta01 and higher also now add a date timestamp build tag to Nginx -V output as well)
    So GCC 7.3.1 is latest for Centmin Mod Nginx for public users right now. I am privately testing GCC 8.1.0 compatibility for Nginx builds :D

     
  2. bassie

    bassie Well-Known Member

    1,032
    248
    63
    Apr 29, 2016
    Ratings:
    +735
    Local Time:
    10:09 PM
    Yup finally the update is released, trough it has been released, upstream since 3 may 2018.

    GCC 7.2.1 is indeed upgraded to GCC 7.3.1.
    Which is in fact Fedora 27's GCC with patches.

    But more importantly the Devtools version of GCC 7.2.* didn't feature the Meltdown/Spectre fix. GCC 7.3.1. Fedora 27 does support it.
     
    • Informative Informative x 1
  3. eva2000

    eva2000 Administrator Staff Member

    37,354
    8,162
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +12,563
    Local Time:
    7:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    Thanks for that insight ! Now all we need is devtoolset-8 :)
     
  4. eva2000

    eva2000 Administrator Staff Member

    37,354
    8,162
    113
    May 24, 2014
    Brisbane, Australia
    Ratings:
    +12,563
    Local Time:
    7:09 AM
    Nginx 1.15.x
    MariaDB 5.5/10.x
    let's check
    Code (Text):
    /opt/rh/devtoolset-7/root/usr/bin/gcc -v     
    Using built-in specs.
    COLLECT_GCC=/opt/rh/devtoolset-7/root/usr/bin/gcc
    COLLECT_LTO_WRAPPER=/opt/rh/devtoolset-7/root/usr/libexec/gcc/x86_64-redhat-linux/7/lto-wrapper
    Target: x86_64-redhat-linux
    Configured with: ../configure --enable-bootstrap --enable-languages=c,c++,fortran,lto --prefix=/opt/rh/devtoolset-7/root/usr --mandir=/opt/rh/devtoolset-7/root/usr/share/man --infodir=/opt/rh/devtoolset-7/root/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-shared --enable-threads=posix --enable-checking=release --enable-multilib --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-linker-build-id --with-gcc-major-version-only --enable-plugin --with-linker-hash-style=gnu --enable-initfini-array --with-default-libstdcxx-abi=gcc4-compatible --with-isl=/builddir/build/BUILD/gcc-7.3.1-20180303/obj-x86_64-redhat-linux/isl-install --enable-libmpx --enable-gnu-indirect-function --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
    Thread model: posix
    gcc version 7.3.1 20180303 (Red Hat 7.3.1-5) (GCC)

    yup 3 new options for -mindirect-branch, -mindirect-return and -mindirect-branch-register
    Code (Text):
    /opt/rh/devtoolset-7/root/usr/bin/gcc -c -Q -march=native --help=target | egrep 'indirect|function-return'
      -mfunction-return=                    keep
      -mindirect-branch-register            [disabled]
      -mindirect-branch=                    keep
      Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):
    

    Code (Text):
    /opt/rh/devtoolset-7/root/usr/bin/gcc -c -Q -march=native --help=target
    The following options are target specific:
      -m128bit-long-double                  [enabled]
      -m16                                  [disabled]
      -m32                                  [disabled]
      -m3dnow                               [disabled]
      -m3dnowa                              [disabled]
      -m64                                  [enabled]
      -m80387                               [enabled]
      -m8bit-idiv                           [disabled]
      -m96bit-long-double                   [disabled]
      -mabi=                                sysv
      -mabm                                 [disabled]
      -maccumulate-outgoing-args            [disabled]
      -maddress-mode=                       long
      -madx                                 [disabled]
      -maes                                 [enabled]
      -malign-data=                         compat
      -malign-double                        [disabled]
      -malign-functions=                    0
      -malign-jumps=                        0
      -malign-loops=                        0
      -malign-stringops                     [enabled]
      -mandroid                             [disabled]
      -march=                               sandybridge
      -masm=                                att
      -mavx                                 [enabled]
      -mavx2                                [disabled]
      -mavx256-split-unaligned-load         [enabled]
      -mavx256-split-unaligned-store        [enabled]
      -mavx5124fmaps                        [disabled]
      -mavx5124vnniw                        [disabled]
      -mavx512bw                            [disabled]
      -mavx512cd                            [disabled]
      -mavx512dq                            [disabled]
      -mavx512er                            [disabled]
      -mavx512f                             [disabled]
      -mavx512ifma                          [disabled]
      -mavx512pf                            [disabled]
      -mavx512vbmi                          [disabled]
      -mavx512vl                            [disabled]
      -mavx512vpopcntdq                     [disabled]
      -mbionic                              [disabled]
      -mbmi                                 [disabled]
      -mbmi2                                [disabled]
      -mbranch-cost=                        3
      -mcld                                 [disabled]
      -mclflushopt                          [disabled]
      -mclwb                                [disabled]
      -mclzero                              [disabled]
      -mcmodel=                             [default]
      -mcpu=                     
      -mcrc32                               [disabled]
      -mcx16                                [enabled]
      -mdispatch-scheduler                  [disabled]
      -mdump-tune-features                  [disabled]
      -mf16c                                [disabled]
      -mfancy-math-387                      [enabled]
      -mfentry                              [disabled]
      -mfma                                 [disabled]
      -mfma4                                [disabled]
      -mforce-drap                          [disabled]
      -mfp-ret-in-387                       [enabled]
      -mfpmath=                             sse
      -mfsgsbase                            [disabled]
      -mfunction-return=                    keep
      -mfused-madd               
      -mfxsr                                [enabled]
      -mgeneral-regs-only                   [disabled]
      -mglibc                               [enabled]
      -mhard-float                          [enabled]
      -mhle                                 [disabled]
      -miamcu                               [disabled]
      -mieee-fp                             [enabled]
      -mincoming-stack-boundary=            0
      -mindirect-branch-register            [disabled]
      -mindirect-branch=                    keep
      -minline-all-stringops                [disabled]
      -minline-stringops-dynamically        [disabled]
      -mintel-syntax             
      -mlarge-data-threshold=<number>       65536
      -mlong-double-128                     [disabled]
      -mlong-double-64                      [disabled]
      -mlong-double-80                      [enabled]
      -mlwp                                 [disabled]
      -mlzcnt                               [disabled]
      -mmemcpy-strategy=         
      -mmemset-strategy=         
      -mmitigate-rop                        [disabled]
      -mmmx                                 [enabled]
      -mmovbe                               [disabled]
      -mmpx                                 [disabled]
      -mms-bitfields                        [disabled]
      -mmusl                                [disabled]
      -mmwaitx                              [disabled]
      -mno-align-stringops                  [disabled]
      -mno-default                          [disabled]
      -mno-fancy-math-387                   [disabled]
      -mno-push-args                        [disabled]
      -mno-red-zone                         [disabled]
      -mno-sse4                             [disabled]
      -mnop-mcount                          [disabled]
      -momit-leaf-frame-pointer             [disabled]
      -mpc32                                [disabled]
      -mpc64                                [disabled]
      -mpc80                                [disabled]
      -mpclmul                              [enabled]
      -mpcommit                             [disabled]
      -mpku                                 [disabled]
      -mpopcnt                              [enabled]
      -mprefer-avx128                       [disabled]
      -mpreferred-stack-boundary=           0
      -mprefetchwt1                         [disabled]
      -mprfchw                              [disabled]
      -mpush-args                           [enabled]
      -mrdpid                               [disabled]
      -mrdrnd                               [disabled]
      -mrdseed                              [disabled]
      -mrecip                               [disabled]
      -mrecip=                   
      -mrecord-mcount                       [disabled]
      -mred-zone                            [enabled]
      -mregparm=                            6
      -mrtd                                 [disabled]
      -mrtm                                 [disabled]
      -msahf                                [enabled]
      -msgx                                 [disabled]
      -msha                                 [disabled]
      -mskip-rax-setup                      [disabled]
      -msoft-float                          [disabled]
      -msse                                 [enabled]
      -msse2                                [enabled]
      -msse2avx                             [disabled]
      -msse3                                [enabled]
      -msse4                                [enabled]
      -msse4.1                              [enabled]
      -msse4.2                              [enabled]
      -msse4a                               [disabled]
      -msse5                     
      -msseregparm                          [disabled]
      -mssse3                               [enabled]
      -mstack-arg-probe                     [disabled]
      -mstack-protector-guard=              tls
      -mstackrealign                        [disabled]
      -mstringop-strategy=                  [default]
      -mstv                                 [enabled]
      -mtbm                                 [disabled]
      -mtls-dialect=                        gnu
      -mtls-direct-seg-refs                 [enabled]
      -mtune-ctrl=               
      -mtune=                               sandybridge
      -muclibc                              [disabled]
      -mveclibabi=                          [default]
      -mvect8-ret-in-mem                    [disabled]
      -mvzeroupper                          [enabled]
      -mx32                                 [disabled]
      -mxop                                 [disabled]
      -mxsave                               [enabled]
      -mxsavec                              [disabled]
      -mxsaveopt                            [enabled]
      -mxsaves                              [disabled]
    
      Known assembler dialects (for use with the -masm= option):
        att intel
    
      Known ABIs (for use with the -mabi= option):
        ms sysv
    
      Known code models (for use with the -mcmodel= option):
        32 kernel large medium small
    
      Valid arguments to -mfpmath=:
        387 387+sse 387,sse both sse sse+387 sse,387
    
      Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):
        keep thunk thunk-extern thunk-inline
    
      Known data alignment choices (for use with the -malign-data= option):
        abi cacheline compat
    
      Known vectorization library ABIs (for use with the -mveclibabi= option):
        acml svml
    
      Known address mode (for use with the -maddress-mode= option):
        long short
    
      Known stack protector guard (for use with the -mstack-protector-guard= option):
        global tls
    
      Valid arguments to -mstringop-strategy=:
        byte_loop libcall loop rep_4byte rep_8byte rep_byte unrolled_loop vector_loop
    
      Known TLS dialects (for use with the -mtls-dialect= option):
        gnu gnu2
    
     
..