104790d9cSJeroen Dobbelaere; RUN: llvm-as -o - %s | llvm-dis -o - 2>&1 | FileCheck %s 204790d9cSJeroen Dobbelaere 304790d9cSJeroen Dobbelaere; Make sure we can assemble and disassemble IR containing intrinsics with 404790d9cSJeroen Dobbelaere; unnamed types. 504790d9cSJeroen Dobbelaere 604790d9cSJeroen Dobbelaere%1 = type opaque 704790d9cSJeroen Dobbelaere%0 = type opaque 804790d9cSJeroen Dobbelaere 904790d9cSJeroen Dobbelaere; CHECK-LABEL: @f0( 10*e45cf479SNikita Popov; CHECK: %c1 = call ptr @llvm.ssa.copy.p0(ptr %arg) 11*e45cf479SNikita Popov; CHECK: %c2 = call ptr @llvm.ssa.copy.p0(ptr %tmp) 12*e45cf479SNikita Popov; CHECK: %c3 = call ptr @llvm.ssa.copy.p0(ptr %arg2) 13*e45cf479SNikita Popov; CHECK: %c4 = call ptr @llvm.ssa.copy.p0(ptr %tmp2) 1404790d9cSJeroen Dobbelaere 1504790d9cSJeroen Dobbelaeredefine void @f0(%0* %arg, %1* %tmp, %1** %tmp2, %0** %arg2) { 1604790d9cSJeroen Dobbelaerebb: 1704790d9cSJeroen Dobbelaere %cmp1 = icmp ne %0* %arg, null 1804790d9cSJeroen Dobbelaere %c1 = call %0* @llvm.ssa.copy.p0s_s.0(%0* %arg) 1904790d9cSJeroen Dobbelaere %c2 = call %1* @llvm.ssa.copy.p0s_s.1(%1* %tmp) 2004790d9cSJeroen Dobbelaere %c3 = call %0** @llvm.ssa.copy.p0p0s_s.1(%0** %arg2) 2104790d9cSJeroen Dobbelaere %c4 = call %1** @llvm.ssa.copy.p0p0s_s.0(%1** %tmp2) 2204790d9cSJeroen Dobbelaere ret void 2304790d9cSJeroen Dobbelaere} 2404790d9cSJeroen Dobbelaere 2504790d9cSJeroen Dobbelaeredeclare %0* @llvm.ssa.copy.p0s_s.0(%0* returned) 2604790d9cSJeroen Dobbelaere 2704790d9cSJeroen Dobbelaeredeclare %1* @llvm.ssa.copy.p0s_s.1(%1* returned) 2804790d9cSJeroen Dobbelaere 2904790d9cSJeroen Dobbelaeredeclare %0** @llvm.ssa.copy.p0p0s_s.1(%0** returned) 3004790d9cSJeroen Dobbelaere 3104790d9cSJeroen Dobbelaeredeclare %1** @llvm.ssa.copy.p0p0s_s.0(%1** returned) 32