llvm-project/llvm/test/Assembler
Rafael Espindola 64c1e18033 Allow alias to point to an arbitrary ConstantExpr.
This  patch changes GlobalAlias to point to an arbitrary ConstantExpr and it is
up to MC (or the system assembler) to decide if that expression is valid or not.

This reduces our ability to diagnose invalid uses and how early we can spot
them, but it also lets us do things like

@test5 = alias inttoptr(i32 sub (i32 ptrtoint (i32* @test2 to i32),
                                 i32 ptrtoint (i32* @bar to i32)) to i32*)

An important implication of this patch is that the notion of aliased global
doesn't exist any more. The alias has to encode the information needed to
access it in its metadata (linkage, visibility, type, etc).

Another consequence to notice is that getSection has to return a "const char *".
It could return a NullTerminatedStringRef if there was such a thing, but when
that was proposed the decision was to just uses "const char*" for that.

llvm-svn: 210062
2014-06-03 02:41:57 +00:00
..
2002-03-08-NameCollision.ll
2002-03-08-NameCollision2.ll
2002-04-07-HexFloatConstants.ll
2002-04-07-InfConstant.ll
2002-04-29-NameBinding.ll
2002-05-02-InvalidForwardRef.ll
2002-07-14-OpaqueType.ll
2002-07-25-QuoteInString.ll
2002-07-25-ReturnPtrFunction.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
2002-07-31-SlashInString.ll
2002-08-15-CastAmbiguity.ll
2002-08-15-ConstantExprProblem.ll
2002-08-15-UnresolvedGlobalReference.ll
2002-08-16-ConstExprInlined.ll
2002-08-19-BytecodeReader.ll
2002-08-22-DominanceProblem.ll
2002-10-08-LargeArrayPerformance.ll
2002-10-13-ConstantEncodingProblem.ll
2002-12-15-GlobalResolve.ll Land the long talked about "type system rewrite" patch. This 2011-07-09 17:41:24 +00:00
2003-01-30-UnsignedString.ll
2003-04-15-ConstantInitAssertion.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2003-04-25-UnresolvedGlobalReference.ll
2003-05-03-BytecodeReaderProblem.ll
2003-05-12-MinIntProblem.ll
2003-05-15-AssemblerProblem.ll
2003-05-15-SwitchBug.ll
2003-05-21-ConstantShiftExpr.ll
2003-05-21-EmptyStructTest.ll
2003-05-21-MalformedShiftCrash.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2003-05-21-MalformedStructCrash.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2003-08-20-ConstantExprGEP-Fold.ll
2003-08-21-ConstantExprCast-Fold.ll
2003-11-05-ConstantExprShift.ll
2003-11-11-ImplicitRename.ll
2003-11-12-ConstantExprCast.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2003-11-24-SymbolTableCrash.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2004-01-11-getelementptrfolding.ll Fix the remaining TCL-style quotes found in the testsuite. This is 2012-07-02 19:09:46 +00:00
2004-01-20-MaxLongLong.ll
2004-02-01-NegativeZero.ll
2004-02-27-SelfUseAssertError.ll
2004-03-07-FunctionAddressAlignment.ll
2004-03-30-UnclosedFunctionCrash.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2004-04-04-GetElementPtrIndexTypes.ll
2004-06-07-VerifierBug.ll
2004-10-22-BCWriterUndefBug.ll
2004-11-28-InvalidTypeCrash.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2005-01-03-FPConstantDisassembly.ll
2005-01-31-CallingAggregateFunction.ll
2005-05-05-OpaqueUndefValues.ll
2005-12-21-ZeroInitVector.ll
2006-09-28-CrashOnInvalid.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2006-12-09-Cast-To-Bool.ll
2007-01-02-Undefined-Arg-Type.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2007-01-05-Cmp-ConstExpr.ll
2007-01-16-CrashOnBadCast.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2007-01-16-CrashOnBadCast2.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2007-03-18-InvalidNumberedVar.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2007-03-19-NegValue.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-04-20-AlignedLoad.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-04-20-AlignedStore.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-04-25-AssemblerFoldExternWeak.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-05-21-Escape.ll
2007-07-19-ParamAttrAmbiguity.ll
2007-08-06-AliasInvalid.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
2007-09-10-AliasFwdRef.ll Reject alias to undefined symbols in the verifier. 2014-03-12 20:15:49 +00:00
2007-09-29-GC.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2007-11-26-AttributeOverload.ll
2007-12-11-AddressSpaces.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
2008-01-11-VarargAttrs.ll
2008-02-18-IntPointerCrash.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
2008-07-10-APInt.ll
2008-09-02-FunctionNotes.ll Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
2008-09-02-FunctionNotes2.ll Inline the checks for mutually exclusive attributes since they're used in only one module. 2012-10-09 20:11:19 +00:00
2008-09-29-RetAttr.ll
2008-10-14-QuoteInName.ll
2009-02-01-UnnamedForwardRef.ll
2009-02-28-CastOpc.ll Remove support for parsing the "type i32" syntax for defining a numbered 2011-06-19 00:03:46 +00:00
2009-02-28-StripOpaqueName.ll
2009-03-24-ZextConstantExpr.ll
2009-07-24-ZeroArgGEP.ll
2010-02-05-FunctionLocalMetadataBecomesNull.ll Debug Info Testing: updated to use NULL instead of "i32 0" in a few fields. 2013-09-06 21:03:58 +00:00
ConstantExprFold.ll Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
ConstantExprFoldCast.ll Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
ConstantExprFoldSelect.ll Fold vector selects with undef elements in the condition. Fixes PR18319. 2013-12-31 19:30:47 +00:00
ConstantExprNoFold.ll Add addrspacecast instruction. 2013-11-15 01:34:59 +00:00
MultipleReturnValueType.ll
addrspacecast-alias.ll Allow alias to point to an arbitrary ConstantExpr. 2014-06-03 02:41:57 +00:00
aggregate-constant-values.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
aggregate-return-single-value.ll
alias-redefinition.ll Don't crash on redefinitions. 2014-05-09 21:49:17 +00:00
align-inst-alloca.ll
align-inst-load.ll
align-inst-store.ll
align-inst.ll
alignstack.ll
anon-functions.ll
atomic.ll IR: add a second ordering operand to cmpxhg for failure 2014-03-11 10:48:52 +00:00
attribute-builtin.ll Remove verifier check that attribute 'builtin' is only applied to calls to 2013-09-07 00:25:48 +00:00
auto_upgrade_intrinsics.ll Change objectsize intrinsic to accept different address spaces. 2013-10-07 18:06:48 +00:00
bcwrap.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
comment.ll
externally-initialized.ll Added LLVM Asm/Bitcode Reader/Writer support for new IR keyword externally_initialized. 2013-02-05 05:57:38 +00:00
extractvalue-invalid-idx.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
fast-math-flags.ll Fast-math test case for bitcode and textual reading/writing 2012-11-27 00:45:08 +00:00
flags.ll
functionlocal-metadata.ll Fix broken CHECK lines. 2014-01-11 21:06:00 +00:00
getInt.ll Clean up RUN command for Assembler/getInt.ll. 2014-01-13 22:37:35 +00:00
getelementptr.ll Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
getelementptr_struct.ll Make tests which first provide a negative assertion via 'not', then 2012-07-02 12:23:19 +00:00
getelementptr_vec_idx1.ll Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
getelementptr_vec_idx2.ll Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
getelementptr_vec_idx3.ll Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
getelementptr_vec_struct.ll Relax the restrictions on vector of pointer types, and vector getelementptr. 2012-11-13 12:59:33 +00:00
global-addrspace-forwardref.ll Preserve address space of forward-referenced global variables in the LL parser 2012-11-16 21:03:47 +00:00
half-constprop.ll No need for those tests to go thru llvm-as and/or llvm-dis. 2014-05-27 22:03:28 +00:00
half-conv.ll No need for those tests to go thru llvm-as and/or llvm-dis. 2014-05-27 22:03:28 +00:00
half.ll Add half support to LLVM (for OpenCL) 2012-05-24 15:59:06 +00:00
huge-array.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
inalloca.ll IR: Change inalloca's grammar a bit 2014-03-09 06:41:58 +00:00
insertextractvalue.ll Remove old 'grep' lines. 2012-04-08 11:53:54 +00:00
insertvalue-invalid-idx.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
internal-hidden-alias.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
internal-hidden-function.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
internal-hidden-variable.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
internal-protected-alias.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
internal-protected-function.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
internal-protected-variable.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
invalid-fwdref1.ll Don't crash if a .ll file contains a forward-reference that looks like a global 2012-10-11 00:38:25 +00:00
invalid-name.ll Make it explicit that nulls are not allowed in names. 2013-11-19 21:12:39 +00:00
invalid_cast.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
invalid_cast2.ll Convert the uses of '|&' to use '2>&1 |' instead, which works on old 2012-07-02 18:37:59 +00:00
invalid_cast3.ll Bug 18228 - Fix accepting bitcasts between vectors of pointers with a 2014-01-22 19:21:33 +00:00
metadata.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
named-metadata.ll Add testcase for r133050 which added support for printing and parsing escaped 2011-06-16 17:14:38 +00:00
numbered-values.ll
private-hidden-alias.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
private-hidden-function.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
private-hidden-variable.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
private-protected-alias.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
private-protected-function.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
private-protected-variable.ll IR: Don't allow non-default visibility on local linkage 2014-05-07 22:57:20 +00:00
select.ll
tls-models.ll Extend the IL for selecting TLS models (PR9788) 2012-06-23 11:37:03 +00:00
unnamed-addr.ll Modify the LLVM assembly output so that it uses references to represent function attributes. 2013-02-20 07:21:42 +00:00
unnamed.ll
vbool-cmp.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
vector-cmp.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
vector-select.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
vector-shift.ll FileCheckize these testcases. 2012-04-08 11:00:38 +00:00
x86mmx.ll