Dan Gohman | fea1dd0 | 2009-08-25 15:38:29 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as %s -o /dev/null |
Tanya Lattner | e7e3f2e | 2004-11-06 22:07:09 +0000 | [diff] [blame] | 2 | |
Chris Lattner | ef308f8 | 2002-01-25 03:44:58 +0000 | [diff] [blame] | 3 | ; This testcase used to fail due to a lack of this diff in Value.cpp: |
| 4 | ; diff -r1.16 Value.cpp |
| 5 | ; 11c11 |
| 6 | ; < #include "llvm/Type.h" |
| 7 | ; --- |
| 8 | ; > #include "llvm/DerivedTypes.h" |
| 9 | ; 74c74,76 |
| 10 | ; < assert(Ty.get() == (const Type*)OldTy &&"Can't refine anything but my type!"); |
| 11 | ; --- |
| 12 | ; > assert(Ty.get() == OldTy &&"Can't refine anything but my type!"); |
| 13 | ; > if (OldTy == NewTy && !OldTy->isAbstract()) |
| 14 | ; > Ty.removeUserFromConcrete(); |
| 15 | ; |
Tanya Lattner | 6e9bcee | 2008-02-14 07:57:12 +0000 | [diff] [blame] | 16 | ; This was causing an assertion failure, due to the "foo" Method object never |
Reid Spencer | d7c2c2f | 2006-12-02 20:34:08 +0000 | [diff] [blame] | 17 | ; releasing it's reference to the opaque %bb value. |
Chris Lattner | ef308f8 | 2002-01-25 03:44:58 +0000 | [diff] [blame] | 18 | ; |
Tanya Lattner | 6e9bcee | 2008-02-14 07:57:12 +0000 | [diff] [blame] | 19 | |
| 20 | %bb = type i32 |
| 21 | %exception_descriptor = type i32 |
Chris Lattner | ef308f8 | 2002-01-25 03:44:58 +0000 | [diff] [blame] | 22 | |
Tanya Lattner | 6e9bcee | 2008-02-14 07:57:12 +0000 | [diff] [blame] | 23 | declare void @foo(i32) |