1*0bc5436aSSamuel; Test that llvm-reduce can remove uninteresting function arguments from function definitions as well as their calls. 2*0bc5436aSSamuel; 3*0bc5436aSSamuel; RUN: llvm-reduce --test FileCheck --test-arg --check-prefix=CHECK-ALL --test-arg %s --test-arg --input-file %s -o %t 4*0bc5436aSSamuel; RUN: FileCheck --check-prefix=CHECK-ALL %s < %t 5*0bc5436aSSamuel 6*0bc5436aSSamuel; CHECK-ALL: declare void @use(i32, i32, i32) 7*0bc5436aSSamueldeclare void @use(i32, i32, i32) 8*0bc5436aSSamuel 9*0bc5436aSSamuel; CHECK-ALL: @interesting(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3 10*0bc5436aSSamueldefine void @interesting(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3) { 11*0bc5436aSSamuelentry: 12*0bc5436aSSamuel ; CHECK-ALL: call void @use(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3) 13*0bc5436aSSamuel call void @use(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3) 14*0bc5436aSSamuel call void @use(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3) 15*0bc5436aSSamuel call void @use(i32 %uninteresting1, i32 %uninteresting2, i32 %uninteresting3) 16*0bc5436aSSamuel ret void 17*0bc5436aSSamuel} 18