[PATCH] D20258: IR: Introduce can_omit_from_dynsym attribute.

Peter Collingbourne via llvm-commits llvm-commits at lists.llvm.org
Fri May 13 14:13:15 PDT 2016


pcc created this revision.
pcc added a reviewer: rafael.
pcc added a subscriber: llvm-commits.
Herald added a subscriber: joker.eph.

If this attribute is given and all modules in the linkage unit have this
attribute, this value may be omitted from the dynamic symbol table. This
is set on constant linkonce_odr globals whose addresses are insignificant
within the module. Because such globals must be defined in each linkage unit
that uses them, a valid program would not be able to observe the absence of
the symbol unless its address is significant.

Part of the fix for PR27553.

http://reviews.llvm.org/D20258

Files:
  docs/BitCodeFormat.rst
  docs/LangRef.rst
  include/llvm/CodeGen/Analysis.h
  include/llvm/IR/GlobalValue.h
  lib/AsmParser/LLLexer.cpp
  lib/AsmParser/LLParser.cpp
  lib/AsmParser/LLParser.h
  lib/AsmParser/LLToken.h
  lib/Bitcode/Reader/BitcodeReader.cpp
  lib/Bitcode/Writer/BitcodeWriter.cpp
  lib/CodeGen/Analysis.cpp
  lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  lib/IR/AsmWriter.cpp
  lib/IR/Globals.cpp
  lib/LTO/LTOModule.cpp
  lib/Linker/LinkModules.cpp
  lib/Transforms/IPO/GlobalOpt.cpp
  test/Assembler/can-omit-from-dynsym.ll
  test/CodeGen/PowerPC/weak_def_can_be_hidden.ll
  test/CodeGen/X86/weak_def_can_be_hidden.ll
  test/Feature/OperandBundles/pr26510.ll
  test/LTO/X86/cfi_endproc.ll
  test/LTO/X86/linkonce_odr_func.ll
  test/Transforms/GlobalOpt/pr21191.ll
  test/Transforms/GlobalOpt/unnamed-addr.ll
  test/tools/gold/X86/coff.ll
  test/tools/gold/X86/emit-llvm.ll
  tools/gold/gold-plugin.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D20258.57251.patch
Type: text/x-patch
Size: 42557 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160513/e6d7554f/attachment.bin>


More information about the llvm-commits mailing list