Skip to content
  • Xin Tong's avatar
    Allow suppressing host and target info in VersionPrinter · 59cb7782
    Xin Tong authored
    Summary:
    VersionPrinter by default outputs information about the Host CPU
    and Default target. Printing this information requires linking in
    a large amount of data, such as supported target triples as C
    strings, which in turn bloats the binary size.
    
    Enable a new CMake option LLVM_VERSION_PRINTER_SHOW_HOST_TARGET_INFO
    which controls printing of the host and target info. This allows
    the target triple names to be dead-code stripped. This is a nice
    win for LLVM clients that wish to minimize their binary size, such
    as graphics drivers.
    
    By default this is ON, so there is no change in the default behavior.
    Clients who wish to suppress this printing can do so by setting this
    option to off via CMake.
    
    A test app on Linux that uses ParseCommandLineOptions() shows a binary
    size reduction of 23KB (from 149K to 126K) for a Release build, and 24KB
    (from 135K to 111K) in a MinSizeRel build.
    
    Reviewers: klimek, beanz, bogner, chandlerc, compnerd
    
    Reviewed By: compnerd
    
    Patch by pammon (Peter Ammon) !
    
    Subscribers: llvm-commits
    
    Differential Revision: https://reviews.llvm.org/D30904
    
    llvm-svn: 300630
    59cb7782
Loading