Announcement

Collapse
No announcement yet.

Mold 2.32 Released With Increased LLVM LLD Compatibility, Faster Identical Code Folding

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • david-nk
    replied
    The most benefit could be seen if mold was available for Windows. Linking a debug build of a medium-sized application takes 15 minutes with the MinGW linker.

    Leave a comment:


  • LtdJorge
    replied
    Originally posted by Kjell View Post
    Gentoo users will love this!
    You know it

    Leave a comment:


  • dralley
    replied
    Originally posted by rjzak View Post

    I use Mold with Rust and it’s quite fast. For one of my projects on my Power9 system, it makes the compile time go from 5-7 minutes to one minute. It’s why I sponsor Mold.
    Of course in general, I meant the specific feature in question

    Leave a comment:


  • rjzak
    replied
    Originally posted by dralley View Post

    I wonder if Rust also benefits from this?
    I use Mold with Rust and it’s quite fast. For one of my projects on my Power9 system, it makes the compile time go from 5-7 minutes to one minute. It’s why I sponsor Mold.

    Leave a comment:


  • dbob
    replied
    Using on Gentoo since a couple of years.

    Leave a comment:


  • Kjell
    replied
    Originally posted by Shtirlic View Post
    This is for Arch when you building packages
    Fedora users cried their eyes out over fno-omit-frame-pointer

    Arch Linux sneaked it in a couple of weeks ago and no one bats an eye
    > This RFC proposes to add -fno-omit-frame-pointer and > -mno-omit-leaf-frame-pointer to the default compilation flags > to improve the effectiveness of profiling and debugging tools. See https://rfc.archlinux.page/0026-fno-omit-frame-pointer/


    Michael

    Leave a comment:


  • Shtirlic
    replied
    This is for Arch when you building packages, AUR etc.

    Code:
    #########################################################################
    # ARCHITECTURE, COMPILE FLAGS
    #########################################################################
    #
    CARCH="x86_64"
    CHOST="x86_64-pc-linux-gnu"
    
    #-- Compiler and Linker Flags
    #CPPFLAGS=""
    CFLAGS="-march=native -O3 -pipe -fno-plt -fexceptions \
            -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security \
            -fstack-clash-protection -fcf-protection \
            -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer"
    CXXFLAGS="$CFLAGS -Wp,-D_GLIBCXX_ASSERTIONS"
    LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now \
             -Wl,-z,pack-relative-relocs,-fuse-ld=mold"
    LTOFLAGS="-flto=auto"
    RUSTFLAGS="-C opt-level=2 -C target-cpu=native -Cforce-frame-pointers=yes"
    #-- Make Flags: change this for DistCC/SMP systems
    MAKEFLAGS="-j$(nproc)"
    #-- Debugging flags
    DEBUG_CFLAGS="-g"
    DEBUG_CXXFLAGS="$DEBUG_CFLAGS"
    #DEBUG_RUSTFLAGS="-C debuginfo=2"​
    Also disable package compression for faster builds/installs

    Code:
    #########################################################################
    # EXTENSION DEFAULTS
    #########################################################################
    #
    #PKGEXT='.pkg.tar.zst'
    #SRCEXT='.src.tar.gz'
    
    # Disable compression
    PKGEXT='.pkg.tar'
    SRCEXT='.src.tar'​

    Leave a comment:


  • Kjell
    replied
    Gentoo users will love this!

    Leave a comment:


  • dralley
    replied
    With Mold 2.32 comes support for faster Identical Code Folding (ICF) as a means of finding identical functions and merging them to reduce the size of the output file.Identical Code Folding with Mold has been found to be very helpful for template-heavy C++ programs.
    I wonder if Rust also benefits from this?

    Leave a comment:


  • patrick1946
    replied
    Originally posted by theuserbl View Post
    Do anybody here in the forum using mold?
    making it really a difference, if you create your program?
    It makes linking fast if you developing applications, because if you change only few translation units, linking gets dominant. If you compile the whole program, the difference should be much smaller. For LTO there should be no differences.

    I use it extensively for TDD.

    Leave a comment:

Working...
X