X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=test%2FBugPoint%2Fremove_arguments_test.ll;h=29a03b83107760e5c00629d3387b9f5036a87cb7;hb=16d00e4b64ce2d2560f4f7e46517f3ce1e05bdf1;hp=5a0bd6f00936e004eb26c3d88854afcf808a3ccf;hpb=484147db9c8386e8e6840475b7911d7dbf8bd109;p=oota-llvm.git diff --git a/test/BugPoint/remove_arguments_test.ll b/test/BugPoint/remove_arguments_test.ll index 5a0bd6f0093..29a03b83107 100644 --- a/test/BugPoint/remove_arguments_test.ll +++ b/test/BugPoint/remove_arguments_test.ll @@ -1,9 +1,18 @@ -; RUN: bugpoint %s -bugpoint-crashcalls +; RUN: bugpoint -load %llvmshlibdir/BugpointPasses%shlibext %s -output-prefix %t -bugpoint-crashcalls -silence-passes +; RUN: llvm-dis %t-reduced-simplified.bc -o - | FileCheck %s +; REQUIRES: loadable_module -; Test to make sure that arguments are removed from the function if they are unnecessary. +; Test to make sure that arguments are removed from the function if they are +; unnecessary. And clean up any types that that frees up too. -declare int %test2() -int %test(int %A, int %B, float %C) { - call int %test2() - ret int %0 +; CHECK: target triple +; CHECK-NOT: struct.anon +%struct.anon = type { i32 } + +declare i32 @test2() + +; CHECK: define void @test() { +define i32 @test(i32 %A, %struct.anon* %B, float %C) { + call i32 @test2() + ret i32 %1 }