llvm/test/Assembler
Chris Lattner 413fd2304d Fix a long-standing bug and misfeature of the disassembler: when dealing with a
stripped .bc file, it didn't make any attempt to try to reuse anonymous types.
This causes an amazing type explosion due to types getting duplicated everywhere
they are referenced and other problems.

This also caused correctness issues, because opaque types are unique for each time
they are uttered in the file.  This means that stripping a .bc file could produce
a .ll file that could not be assembled (e.g. 2009-02-28-StripOpaqueName.ll).

This patch fixes both of these issues.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65738 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-01 00:03:38 +00:00
..
2002-01-24-BadSymbolTableAssert.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-01-24-ValueRefineAbsType.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-02-19-TypeParsing.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-03-08-NameCollision2.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-03-08-NameCollision.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-04-04-PureVirtMethCall2.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-04-04-PureVirtMethCall.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-04-05-TypeParsing.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-04-07-HexFloatConstants.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-04-07-InfConstant.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-04-29-NameBinding.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-05-02-InvalidForwardRef.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-05-02-ParseError.ll
2002-07-08-HugePerformanceProblem.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-07-14-InternalLossage.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-07-14-OpaqueType.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-07-25-ParserAssertionFailure.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2002-07-25-QuoteInString.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-07-25-ReturnPtrFunction.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-07-31-SlashInString.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-08-15-CastAmbiguity.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-08-15-ConstantExprProblem.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-08-15-UnresolvedGlobalReference.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-08-16-ConstExprInlined.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-08-19-BytecodeReader.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-08-22-DominanceProblem.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-10-08-LargeArrayPerformance.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-10-13-ConstantEncodingProblem.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2002-10-15-NameClash.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2002-12-15-GlobalResolve.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-01-30-UnsignedString.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-04-15-ConstantInitAssertion.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2003-04-25-UnresolvedGlobalReference.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-05-03-BytecodeReaderProblem.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-05-12-MinIntProblem.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-05-15-AssemblerProblem.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-05-15-SwitchBug.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-05-21-ConstantShiftExpr.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-05-21-EmptyStructTest.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-05-21-MalformedShiftCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2003-05-21-MalformedStructCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2003-06-17-InvokeDisassemble.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-06-30-RecursiveTypeProblem.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-08-20-ConstantExprGEP-Fold.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-08-21-ConstantExprCast-Fold.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-10-04-NotMergingGlobalConstants.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2003-11-05-ConstantExprShift.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-11-11-ImplicitRename.ll For all RUN lines starting with "not", redirect stderr to /dev/null so tests 2008-06-10 12:57:32 +00:00
2003-11-12-ConstantExprCast.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2003-11-24-SymbolTableCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2003-12-30-TypeMapInvalidMemory.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2004-01-11-getelementptrfolding.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2004-01-20-MaxLongLong.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2004-02-01-NegativeZero.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2004-02-27-SelfUseAssertError.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2004-03-07-FunctionAddressAlignment.ll upgrade this test, which wasn't testing the right thing since llvm-upgrade came around. 2008-02-15 23:58:25 +00:00
2004-03-30-UnclosedFunctionCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2004-04-04-GetElementPtrIndexTypes.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2004-06-07-VerifierBug.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
2004-10-22-BCWriterUndefBug.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2004-11-28-InvalidTypeCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2005-01-03-FPConstantDisassembly.ll Removing llvm upgrade, so remove tests specific to llvm-upgrade and update the tests that used it. 2008-02-16 23:27:24 +00:00
2005-01-31-CallingAggregateFunction.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2005-02-09-AsmWriterStoreBug.ll Removing llvm upgrade, so remove tests specific to llvm-upgrade and update the tests that used it. 2008-02-16 23:27:24 +00:00
2005-05-05-OpaqueUndefValues.ll Don't spew bitcode to standard out if this test 2009-01-05 10:52:29 +00:00
2005-12-21-ZeroInitVector.ll Removing llvm upgrade, so remove tests specific to llvm-upgrade and update the tests that used it. 2008-02-16 23:27:24 +00:00
2006-05-26-VarargsCallEncode.ll Fix the AsmWriter to not print extra spaces after parameter attributes. 2008-08-05 15:51:44 +00:00
2006-09-28-CrashOnInvalid.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2006-12-09-Cast-To-Bool.ll
2007-01-02-Undefined-Arg-Type.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2007-01-05-Cmp-ConstExpr.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2007-01-16-CrashOnBadCast2.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2007-01-16-CrashOnBadCast.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
2007-03-18-InvalidNumberedVar.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2007-03-19-NegValue.ll
2007-04-20-AlignedLoad.ll
2007-04-20-AlignedStore.ll
2007-04-25-AssemblerFoldExternWeak.ll
2007-05-21-Escape.ll
2007-07-19-ParamAttrAmbiguity.ll
2007-07-30-AutoUpgradeZextSext.ll
2007-08-06-AliasInvalid.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2007-09-10-AliasFwdRef.ll
2007-09-29-GC.ll
2007-11-26-AttributeOverload.ll For all RUN lines starting with "not", redirect stderr to /dev/null so tests 2008-06-10 12:57:32 +00:00
2007-11-27-AutoUpgradeAttributes.ll
2007-12-11-AddressSpaces.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2008-01-11-VarargAttrs.ll
2008-02-18-IntPointerCrash.ll Reimplement the old and horrible bison parser for .ll files with a nice 2009-01-02 07:01:27 +00:00
2008-02-20-MultipleReturnValue.ll Update bitcode reader and writer to handle multiple return values. 2008-02-26 01:29:32 +00:00
2008-07-10-APInt.ll Implement PR2538 2008-07-11 00:30:06 +00:00
2008-09-02-FunctionNotes2.ll Attributes noinline alwaysinline are incompatible 2008-10-01 23:41:25 +00:00
2008-09-02-FunctionNotes.ll Support inreg, zext and sext as return value attributes. 2008-09-29 20:49:50 +00:00
2008-09-29-RetAttr.ll Support inreg, zext and sext as return value attributes. 2008-09-29 20:49:50 +00:00
2008-10-14-NamedTypeOnInteger.ll Fix the .ll grammar rules to allow any type before an 'i32', not just an 2008-10-15 06:16:45 +00:00
2008-10-14-QuoteInName.ll Prevent assert when using '"' in names (via hexadecimal). 2008-10-14 23:51:43 +00:00
2009-02-01-UnnamedForwardRef.ll Fix PR3372 2009-02-02 07:24:28 +00:00
2009-02-28-StripOpaqueName.ll Fix a long-standing bug and misfeature of the disassembler: when dealing with a 2009-03-01 00:03:38 +00:00
aggregate-constant-values.ll Re-apply 52002, allowing the verifier to accept non-MRV struct return 2008-06-09 21:26:13 +00:00
aggregate-return-single-value.ll Re-apply 52002, allowing the verifier to accept non-MRV struct return 2008-06-09 21:26:13 +00:00
anon-functions.ll add proper asmwriter and asmparser support for anonymous functions. 2009-02-18 21:48:13 +00:00
AutoUpgradeIntrinsics.ll Fix some escaping and quoting in RUN lines, mainly involving { and <. In two 2008-06-10 16:04:47 +00:00
ConstantExprFold.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
ConstantExprFoldCast.ll rename *.llx -> *.ll 2008-04-19 22:26:29 +00:00
dg.exp sabre brings to my attention that the 'tr' suffix is also obsolete 2008-05-20 21:00:03 +00:00
huge-array.ll Don't silently truncate array extents to 32 bits. 2008-05-23 21:40:55 +00:00
insertextractvalue.ll nounwindify. 2008-06-03 01:21:11 +00:00
MultipleReturnValueType.ll Teach llvm-as to accept function types with multiple return types. 2008-04-19 00:24:39 +00:00
numbered-values.ll Add support for parsing .ll files that have numbers in front of 2008-08-29 17:12:13 +00:00
private.ll Add the private linkage. 2009-01-15 20:18:42 +00:00
select.ll Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit. 2008-05-20 22:07:21 +00:00
vbool-cmp.ll Extend the vcmp/fcmp LLVM IR instructions to take vectors as arguments 2008-09-09 01:02:47 +00:00
vector-cmp.ll Fix a bunch of bugs handling vector compare constant expressions, fixing 2008-07-14 05:17:31 +00:00
vector-select.ll Re-enables the new vector select in the bitcode reader, by modifying the 2008-09-16 01:01:33 +00:00
vector-shift.ll Add vector shifts to the IR, patch by Eli Friedman. 2008-07-29 15:49:41 +00:00