xref: /llvm-project/llvm/test/tools/llvm-reduce/remove-function-attributes.ll (revision 0bc5436ae892eaa6ee038f2d1ea26e02a72eed96)
1*0bc5436aSSamuel; Test that llvm-reduce can remove uninteresting attributes.
2*0bc5436aSSamuel;
3*0bc5436aSSamuel; RUN: llvm-reduce --test FileCheck --test-arg --check-prefixes=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t
4*0bc5436aSSamuel; RUN: FileCheck --check-prefix=CHECK-FINAL %s < %t
5*0bc5436aSSamuel
6*0bc5436aSSamuel; CHECK-INTERESTINGNESS: declare
7*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: "attr0"
8*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: void @f0
9*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: i32
10*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: i32
11*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: "attr6"
12*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: #0
13*0bc5436aSSamuel
14*0bc5436aSSamuel; CHECK-FINAL: declare "attr0" void @f0(i32, i32 "attr6") #0
15*0bc5436aSSamuel
16*0bc5436aSSamueldeclare "attr0" "attr1" "attr2" void @f0(i32 "attr3" "attr4" "attr5", i32 "attr6" "attr7" "attr8") #0
17*0bc5436aSSamuel
18*0bc5436aSSamuel; CHECK-INTERESTINGNESS: attributes #0 = {
19*0bc5436aSSamuel; CHECK-INTERESTINGNESS-SAME: "attr10"
20*0bc5436aSSamuel
21*0bc5436aSSamuel; CHECK-FINAL:  attributes #0 = { "attr10" }
22*0bc5436aSSamuel
23*0bc5436aSSamuelattributes #0 = { "attr9" "attr10" "attr11" }
24