NAKAMURA Takumi | 6ea8a94 | 2010-11-29 07:58:32 +0000 | [diff] [blame] | 1 | ; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes |
Dan Gohman | 22e1adb | 2010-06-07 20:58:11 +0000 | [diff] [blame] | 2 | ; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s |
NAKAMURA Takumi | 6ea8a94 | 2010-11-29 07:58:32 +0000 | [diff] [blame] | 3 | ; REQUIRES: loadable_module |
Chris Lattner | ef3d5d0 | 2003-06-24 23:40:27 +0000 | [diff] [blame] | 4 | |
Tobias Grosser | e692669 | 2015-07-26 11:37:05 +0000 | [diff] [blame] | 5 | ; Test to make sure that arguments are removed from the function if they are |
| 6 | ; unnecessary. And clean up any types that frees up too. |
Dan Gohman | fa9ad13 | 2010-06-07 20:28:37 +0000 | [diff] [blame] | 7 | |
Mehdi Amini | d178f4f | 2015-09-16 05:34:32 +0000 | [diff] [blame^] | 8 | ; CHECK: ModuleID |
Dan Gohman | fa9ad13 | 2010-06-07 20:28:37 +0000 | [diff] [blame] | 9 | ; CHECK-NOT: struct.anon |
| 10 | %struct.anon = type { i32 } |
Chris Lattner | ef3d5d0 | 2003-06-24 23:40:27 +0000 | [diff] [blame] | 11 | |
Reid Spencer | 104b470 | 2007-03-19 18:08:42 +0000 | [diff] [blame] | 12 | declare i32 @test2() |
| 13 | |
Dan Gohman | fb8ed43 | 2010-06-07 20:20:33 +0000 | [diff] [blame] | 14 | ; CHECK: define void @test() { |
Dan Gohman | fa9ad13 | 2010-06-07 20:28:37 +0000 | [diff] [blame] | 15 | define i32 @test(i32 %A, %struct.anon* %B, float %C) { |
Reid Spencer | 104b470 | 2007-03-19 18:08:42 +0000 | [diff] [blame] | 16 | call i32 @test2() |
| 17 | ret i32 %1 |
Chris Lattner | ef3d5d0 | 2003-06-24 23:40:27 +0000 | [diff] [blame] | 18 | } |