packages feed

llvm-hs-pretty-0.4.0.0: tests/input/metadata.ll

declare !foo !0 !bar !{!"baz"} !qux !{!2} void @f1()

define void @f2() !foo !0 !bar !{!"baz"} !qux !{!2} {
	ret void
}

; --- [ Instruction metadata ] -------------------------------------------------

define i32 @ret_3() {
	%result = add i32 30, 12, !foo !{!"bar"}, !baz !{!"qux"}
	ret i32 42, !foo !{!"bar"}, !baz !{!"qux"}
}

; --- [ Metadata definitions ] -------------------------------------------------

; Empty named metadata definition.
!foo = !{}

; Plain named metadata definition.
!bar = !{!0}

; Multiple metadata IDs.
!baz = !{!0, !1}

; Empty metadata definition.
!0 = !{}

; Plain metadata definition.
!1 = !{!0}

; Multiple metadata IDs.
!2 = !{!0, !1}

; Distinct.
!3 = distinct !{!2}

; Nested metadata.
!4 = !{!{!{!0}}}

; Metadata string.
!5 = !{!"foo"}

; Metadata constant.
!6 = !{i32 42}

; Metadata constant.
!7 = !{!{!"bar"}}