Lines Matching refs:empty
3 ; This tests correct handling of empty aggregate parameters and return values.
4 ; An empty parameter passed by value does not consume a protocol register or
5 ; a parameter save area doubleword. An empty parameter passed by reference
6 ; is treated as any other pointer parameter. An empty aggregate return value
15 %struct.empty = type {}
17 …ruct.empty* noalias sret(%struct.empty) %agg.result, %struct.empty* byval(%struct.empty) %a1, %str…
19 %a2.addr = alloca %struct.empty*, align 8
20 store %struct.empty* %a2, %struct.empty** %a2.addr, align 8
21 %0 = load %struct.empty*, %struct.empty** %a2.addr, align 8
22 %1 = bitcast %struct.empty* %agg.result to i8*
23 %2 = bitcast %struct.empty* %0 to i8*
36 define void @caller(%struct.empty* noalias sret(%struct.empty) %agg.result) nounwind {
38 %e1 = alloca %struct.empty, align 1
39 %e2 = alloca %struct.empty, align 1
40 %e3 = alloca %struct.empty, align 1
41 …(%struct.empty* sret(%struct.empty) %agg.result, %struct.empty* byval(%struct.empty) %e1, %struct.…