[llvm-testresults] buildbot failure in lab.llvm.org on phase1 - sanity

llvmlab-buildmaster at lab.llvm.org llvmlab-buildmaster at lab.llvm.org
Thu Oct 31 14:10:05 PDT 2013


The Buildbot has detected a new failure on builder phase1 - sanity while building llvm.
Full details are available at:
 http://lab.llvm.org:8013/builders/phase1%20-%20sanity/builds/13569

Buildbot URL: http://lab.llvm.org:8013/

Buildslave for this Build: macpro1

Build Reason: scheduler
Build Source Stamp: 193800
Blamelist: rafael

BUILD FAILED: failed

sincerely,
 -The Buildbot


================================================================================

CHANGES:
Files:
 include/llvm-c/lto.h
 include/llvm/LTO/LTOCodeGenerator.h
 include/llvm/Transforms/IPO.h
 lib/LTO/LTOCodeGenerator.cpp
 lib/LTO/LTOModule.cpp
 lib/Transforms/IPO/IPO.cpp
 lib/Transforms/IPO/Internalize.cpp
 lib/Transforms/IPO/PassManagerBuilder.cpp
 test/LTO/linkonce_odr_func.ll
 test/Transforms/Internalize/linkonce_odr_func.ll
 test/Transforms/Internalize/lists.ll
 tools/gold/gold-plugin.cpp
 tools/llvm-lto/llvm-lto.cpp
 tools/lto/lto.cpp
 tools/lto/lto.exports
On: http://10.1.1.2/svn/llvm-project
For: llvm
At: Thu 31 Oct 2013 14:00:30
Changed By: rafael
Comments: Use LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN instead of the "dso list".

There are two ways one could implement hiding of linkonce_odr symbols in LTO:
* LLVM tells the linker which symbols can be hidden if not used from native
  files.
* The linker tells LLVM which symbols are not used from other object files,
  but will be put in the dso symbol table if present.

GOLD's API is the second option. It was implemented almost 1:1 in llvm by
passing the list down to internalize.

LLVM already had partial support for the first option. It is also very similar
to how ld64 handles hiding these symbols when *not* doing LTO.

This patch then
* removes the APIs for the DSO list.
* marks LTO_SYMBOL_SCOPE_DEFAULT_CAN_BE_HIDDEN all linkonce_odr unnamed_addr
  global values and other linkonce_odr whose address is not used.
* makes the gold plugin responsible for handling the API mismatch.Properties: 




LOGS:






More information about the llvm-testresults mailing list