brintos

brintos / llvm-project-archived public Read only

0
0
Text · 776 B · 14f931c Raw
30 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -S < %s | FileCheck %s3 4; This is an overloaded struct return, we should not try to update it to an5; anonymous struct return.6 7%ty = type { i32 }8 9define %ty @test(%ty %arg) {10; CHECK-LABEL: @test(11; CHECK-NEXT:    [[COPY:%.*]] = call [[TY:%.*]] @llvm.ssa.copy.s_tys([[TY]] [[ARG:%.*]])12; CHECK-NEXT:    ret [[TY]] [[COPY]]13;14  %copy = call %ty @llvm.ssa.copy.s_tys(%ty %arg)15  ret %ty %copy16}17 18define %ty @test_not_real_intrinsic() {19; CHECK-LABEL: @test_not_real_intrinsic(20; CHECK-NEXT:    [[RET:%.*]] = call [[TY:%.*]] @llvm.dummy()21; CHECK-NEXT:    ret [[TY]] [[RET]]22;23  %ret = call %ty @llvm.dummy()24  ret %ty %ret25}26 27declare %ty @llvm.dummy()28 29declare %ty @llvm.ssa.copy.s_tys(%ty)30