llvm-project/llvm/test/Linker
Fangrui Song c2a3888793 [IR] Use Min behavior for module flag "PIC Level"
Using Max for both "PIC Level" and "PIE Level" is inconsistent. PIC imposes less
restriction while PIE imposes more restriction. The result generally
picks the more restrictive behavior: Min for PIC.

This choice matches `ld -r`: a non-pic object and a pic object merge into a
result which should be treated as non-pic.

To allow linking "PIC Level" using Error/Max from old bitcode files, upgrade
Error/Max to Min.

Reviewed By: tejohnson

Differential Revision: https://reviews.llvm.org/D130531
2022-08-18 16:28:55 -07:00
..
Inputs [IR] Use Min behavior for module flag "PIC Level" 2022-08-18 16:28:55 -07:00
2002-07-17-GlobalFail.ll
2002-07-17-LinkTest2.ll
2002-08-20-ConstantExpr.ll
2003-01-30-LinkerRename.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
2003-01-30-LinkerTypeRename.ll
2003-04-23-LinkOnceLost.ll
2003-04-26-NullPtrLinkProblem.ll
2003-05-15-TypeProblem.ll
2003-05-31-LinkerRename.ll
2003-06-02-TypeResolveProblem.ll
2003-06-02-TypeResolveProblem2.ll
2003-08-20-OpaqueTypeResolve.ll
2003-08-23-GlobalVarLinking.ll
2003-08-23-RecursiveOpaqueTypeResolve.ll
2003-08-24-InheritPtrSize.ll
2003-08-28-TypeResolvesGlobal.ll
2003-08-28-TypeResolvesGlobal2.ll
2003-08-28-TypeResolvesGlobal3.ll
2003-10-27-LinkOncePromote.ll
2003-11-18-TypeResolution.ll
2004-02-17-WeakStrongLinkage.ll
2004-05-07-TypeResolution1.ll
2004-05-07-TypeResolution2.ll
2004-12-03-DisagreeingType.ll
2005-02-12-ConstantGlobals-2.ll
2005-02-12-ConstantGlobals.ll
2005-12-06-AppendingZeroLengthArrays.ll
2006-01-19-ConstantPacked.ll
2008-03-05-AliasReference.ll
2008-03-05-AliasReference2.ll
2008-03-07-DroppedSection_a.ll
2008-03-07-DroppedSection_b.ll
2008-06-13-LinkOnceRedefinition.ll
2008-06-26-AddressSpace.ll
2008-07-06-AliasFnDecl.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
2008-07-06-AliasFnDecl2.ll
2008-07-06-AliasWeakDest.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
2008-07-06-AliasWeakDest2.ll
2009-09-03-mdnode.ll
2009-09-03-mdnode2.ll
2011-08-04-DebugLoc.ll
2011-08-04-DebugLoc2.ll
2011-08-04-Metadata.ll
2011-08-04-Metadata2.ll
2011-08-18-unique-class-type.ll
2011-08-18-unique-class-type2.ll
2011-08-18-unique-debug-type.ll
2011-08-18-unique-debug-type2.ll
AppendingLinkage.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
AppendingLinkage2.ll
ConstantGlobals.ll
DSOLocalEquivalent.ll [llvm] Change DSOLocalEquivalent type if the underlying global value type changes 2021-03-09 15:09:48 -08:00
DbgDeclare.ll
DbgDeclare2.ll
LinkOnce.ll
PR8300.ll
addrspace.ll
alias-2.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
alias-3.ll
alias-4.ll Linker: Avoid scheduling the link of a global value twice due to an alias 2021-04-28 13:22:10 -07:00
alias-threadlocal.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
alias.ll
alignment.ll
appending-global-crash.ll [llvm-link] Fix crash when materializing appending global 2021-01-25 18:08:07 -08:00
appending-global-err1.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
appending-global-err2.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
appending-global-err3.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
appending-global-err4.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
appending-global-err5.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
appending-global-proto.ll [llvm-link] Fix for an assertion when linking global with appending linkage 2021-01-23 00:10:42 -08:00
apple-version.ll
available_externally_a.ll
available_externally_b.ll
available_externally_over_decl.ll
basiclink.ll
blockaddress.ll [Bitcode] materialize Functions early when BlockAddress taken 2022-04-12 11:38:35 -07:00
broken.ll
byref-types.ll
byval-types.ll
comdat-any.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
comdat-incompatible-kinds.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-largest.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-nodeduplicate.ll [Linker] Handle comdat nodeduplicate 2021-08-31 22:32:20 -07:00
comdat-nonprevailing-decl.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-refer-to-discarded.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-rm-dst.ll
comdat-samesize.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-size-err.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat-unneeded.ll [test] Reorganize test/Linker/comdat*.ll 2021-08-28 10:11:08 -07:00
comdat.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
comdat_group.ll
commandline.ll
constructor-comdat.ll
ctors.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
ctors2.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
ctors3.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
ctors4.ll
cuda-libdevice.ll [IRLinker] Suppress linker warnings when linking with CUDA libdevice. 2021-09-01 10:45:15 -07:00
datalayout.ll
debug-info-bad-enum.ll [DebugInfo] Skip ODRUniquing for mismatched tags 2021-10-26 15:28:25 -07:00
debug-info-global-var.ll
debug-info-use-before-def.ll [DebugInfo] ValueMapper impl for DIArgList respects IgnoreMissingLocals 2022-01-17 17:17:32 +00:00
debug-info-version-a.ll
debug-info-version-b.ll
dicompositetype-unique.ll
distinct-cycles.ll
distinct.ll
dllstorage-a.ll
dllstorage-b.ll
drop-debug.ll
elementtype-struct-1.ll Copy Elementtype Attribute to IR at Link step 2021-09-07 11:41:43 -07:00
empty-swift.ll
func-attrs-a.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
func-attrs-b.ll OpaquePtr: Bulk update tests to use typed sret 2020-11-20 17:58:26 -05:00
funcimport.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
funcimport2.ll
funcimport_appending_global.ll
funcimport_comdat.ll
globalorder.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
ident.ll
ifunc.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00
inalloca-types.ll Reapply "OpaquePtr: Turn inalloca into a type attribute" 2021-03-29 08:55:30 -04:00
inlineasm.ll [Tests] Add elementtype attribute to indirect inline asm operands (NFC) 2022-01-06 14:23:51 +01:00
internalize-lazy.ll
intrinsics-with-unnamed-types.ll Support intrinsic overloading on unnamed types 2021-03-19 14:34:25 +01:00
link-arm-and-thumb-module-inline-asm.ll Simplify append to module inline asm string in IRLinker::run() 2020-12-02 14:56:43 +01:00
link-arm-and-thumb.ll
link-flags.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
link-global-to-func.ll
link-type-names.ll
linkage.ll
linkage2.ll
linkmdnode.ll
linkmdnode2.ll
linknamedmdnode.ll
linknamedmdnode2.ll
lto-attributes.ll
mdlocation.ll
metadata-a.ll
metadata-attach.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
metadata-b.ll
metadata-function.ll
metadata-global.ll
metadata-mismatch.test
metadata-source.ll
metadata-with-global-value-operand.ll
module-flags-1-a.ll
module-flags-1-b.ll
module-flags-2-a.ll
module-flags-2-b.ll
module-flags-3-a.ll
module-flags-3-b.ll
module-flags-4-a.ll
module-flags-4-b.ll
module-flags-5-a.ll
module-flags-5-b.ll
module-flags-6-a.ll
module-flags-6-b.ll
module-flags-7-a.ll
module-flags-7-b.ll
module-flags-8-a.ll [Metadata] Utilize the resizing capability of MDNodes in Moduleflag processing. 2022-07-06 10:18:33 -07:00
module-flags-8-b.ll
module-flags-dont-change-others.ll [Metadata] Utilize the resizing capability of MDNodes in Moduleflag processing. 2022-07-06 10:18:33 -07:00
module-flags-min.ll [IR] Allow absence for Min module flags and make AArch64 BTI/PAC-RET flags backward compatible 2022-07-18 09:35:12 -07:00
module-flags-pic-1-a.ll [IR] Use Min behavior for module flag "PIC Level" 2022-08-18 16:28:55 -07:00
module-flags-pic-2-a.ll [IR] Use Min behavior for module flag "PIC Level" 2022-08-18 16:28:55 -07:00
module-max-warn.ll
multiple-merged-structs.ll
null_mapping_constant.ll
objectivec-class-property-flag-mismatch.ll
odr-lambda-1.ll
odr.ll
only-needed-compiler-used.ll
only-needed-ctors1.ll
only-needed-ctors2.ll
only-needed-debug-metadata.ll
only-needed-dtors1.ll
only-needed-dtors2.ll
only-needed-named-metadata.ll
only-needed-recurse.ll
only-needed-used.ll
opaque.ll
override-different-linkage.ll
override-with-internal-linkage-2.ll
override-with-internal-linkage.ll
override.ll
partial-type-refinement-link.ll
partial-type-refinement.ll
pr21374.ll
pr21494.ll
pr22807.ll
pr26037.ll
pr27044.ll
prologuedata.ll
redefinition.ll
replaced-function-matches-first-subprogram.ll
scalable-vector-type-construction.ll Fix typo of colon to semicolon in lit tests 2021-10-09 10:03:50 +08:00
sret-types.ll
stack-alignment.ll reland [IR] make -stack-alignment= into a module attr 2021-06-08 10:59:46 -07:00
stack-protector-guard-module-attrs.ll [IR] make stack-protector-guard-* flags into module attrs 2021-05-21 15:53:30 -07:00
subprogram-linkonce-weak.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
syncscopes.ll
targettriple.ll
testlink.ll Preserve the lexical order for global variables during llvm-link merge 2021-04-26 10:11:34 -07:00
thinlto_funcimport_debug.ll Revert "[NFC] remove explicit default value for strboolattr attribute in tests" 2021-05-24 19:43:40 +02:00
transitive-lazy-link.ll
type-unique-alias.ll
type-unique-dst-types.ll
type-unique-inheritance.ll
type-unique-name.ll
type-unique-odr-a.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
type-unique-odr-b.ll
type-unique-opaque.ll
type-unique-simple-a.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
type-unique-simple-b.ll [AIX] Bump DWARF versions to 3 because XCOFF64 requires DWARF64 2022-02-01 11:18:19 -05:00
type-unique-simple2-a.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
type-unique-simple2-b.ll [AIX] Bump DWARF versions to 3 because XCOFF64 requires DWARF64 2022-02-01 11:18:19 -05:00
type-unique-simple2.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
type-unique-src-type.ll
type-unique-type-array-a.ll [tests] Make 'object-emission' imply 'default_triple' 2022-03-22 16:46:48 +04:00
type-unique-type-array-b.ll [AIX] Bump DWARF versions to 3 because XCOFF64 requires DWARF64 2022-02-01 11:18:19 -05:00
type-unique-unrelated.ll
unique-fwd-decl-a.ll
unique-fwd-decl-order.ll
uniqued-distinct-cycles.ll
unnamed-addr-err-a.ll
unnamed-addr-err-b.ll
unnamed-addr1-a.ll
unnamed-addr1-b.ll
visibility.ll
weakextern.ll
wrong-addrspace-gv-declaration.ll [IR] Enable opaque pointers by default 2022-06-02 09:40:56 +02:00