[PATCH] D61547: Disallow llvm.global_ctors and llvm.global_dtors of the 2-field form

Fangrui Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat May 4 01:08:13 PDT 2019


MaskRay created this revision.
MaskRay added reviewers: rnk, nicholas, nlewycky, compnerd.
Herald added subscribers: llvm-commits, jsji, jocewei, PkmX, dexonsmith, the_o, brucehoult, MartinMosbeck, rogfer01, steven_wu, atanasyan, edward-jones, zzheng, jrtc27, niosHD, sabuasal, apazos, simoncook, johnrusso, rbar, asb, fedor.sergeev, eraman, javed.absar, nemanjai, sdardis, mehdi_amini, jyknight.
Herald added a project: LLVM.

The 3-field form was introduced by D3499 <https://reviews.llvm.org/D3499> in 2014 and the legacy 2-field
form was planned to be removed in LLVM 4.0

This patch migrates the existing 2-field form to use the 3-field form
and deletes the compatibility code.


Repository:
  rL LLVM

https://reviews.llvm.org/D61547

Files:
  docs/LangRef.rst
  lib/CodeGen/AsmPrinter/AsmPrinter.cpp
  lib/IR/Verifier.cpp
  lib/Transforms/Utils/ModuleUtils.cpp
  test/Bitcode/metadata-2.ll
  test/Bitcode/upgrade-global-ctors.ll
  test/Bitcode/upgrade-global-ctors.ll.bc
  test/CodeGen/AArch64/init-array.ll
  test/CodeGen/ARM/ctor_order.ll
  test/CodeGen/ARM/ctors_dtors.ll
  test/CodeGen/Mips/init-array.ll
  test/CodeGen/PowerPC/pr17354.ll
  test/CodeGen/RISCV/init-array.ll
  test/CodeGen/SPARC/2008-10-10-InlineAsmMemoryOperand.ll
  test/CodeGen/X86/2007-06-04-X86-64-CtorAsmBugs.ll
  test/CodeGen/X86/2011-08-29-InitOrder.ll
  test/CodeGen/X86/init-priority.ll
  test/CodeGen/X86/negate-add-zero.ll
  test/DebugInfo/COFF/asan-module-ctor.ll
  test/DebugInfo/COFF/asan-module-without-functions.ll
  test/DebugInfo/Generic/incorrect-variable-debugloc.ll
  test/DebugInfo/X86/cu-ranges-odr.ll
  test/DebugInfo/X86/dbg_value_direct.ll
  test/DebugInfo/X86/debug-ranges-offset.ll
  test/DebugInfo/X86/generate-odr-hash.ll
  test/Feature/global_pv.ll
  test/Instrumentation/AddressSanitizer/instrument_initializer_metadata.ll
  test/Instrumentation/MemorySanitizer/global_ctors_2to3.ll
  test/Linker/ctors5.ll
  test/Linker/global_ctors.ll
  test/MC/ARM/cxx-global-constructor.ll
  test/Transforms/GlobalDCE/global_ctors.ll
  test/Transforms/GlobalDCE/global_ctors_integration.ll
  test/Transforms/GlobalOpt/2006-07-07-InlineAsmCrash.ll
  test/Transforms/GlobalOpt/2007-06-04-PackedStruct.ll
  test/Transforms/GlobalOpt/2010-10-19-WeakOdr.ll
  test/Transforms/GlobalOpt/2011-04-09-EmptyGlobalCtors.ll
  test/Transforms/GlobalOpt/assume.ll
  test/Transforms/GlobalOpt/constantfold-initializers.ll
  test/Transforms/GlobalOpt/crash.ll
  test/Transforms/GlobalOpt/ctor-list-opt-constexpr.ll
  test/Transforms/GlobalOpt/ctor-list-opt-inbounds.ll
  test/Transforms/GlobalOpt/cxx-dtor.ll
  test/Transforms/GlobalOpt/externally-initialized-global-ctr.ll
  test/Transforms/GlobalOpt/int_sideeffect.ll
  test/Transforms/GlobalOpt/invariant-nodatalayout.ll
  test/Transforms/GlobalOpt/invariant.group.ll
  test/Transforms/GlobalOpt/invariant.ll
  test/Transforms/GlobalOpt/invoke.ll
  test/Transforms/GlobalOpt/memset-null.ll
  test/Transforms/GlobalOpt/undef-init.ll
  test/Transforms/ObjCARC/apelim.ll
  test/Transforms/ObjCARC/comdat-ipo.ll
  test/Transforms/ThinLTOBitcodeWriter/unsplittable.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D61547.198128.patch
Type: text/x-patch
Size: 51897 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190504/25edaec7/attachment.bin>


More information about the llvm-commits mailing list