1*890146b1SPaulo Matos // NOTE: Assertions have been autogenerated by utils/update_cc_test_checks.py 2*890146b1SPaulo Matos // RUN: %clang_cc1 -triple wasm32-unknown-unknown -target-feature +reference-types -o - -emit-llvm %s | FileCheck %s 3*890146b1SPaulo Matos 4*890146b1SPaulo Matos typedef __externref_t externref_t; 5*890146b1SPaulo Matos 6*890146b1SPaulo Matos void helper(externref_t); 7*890146b1SPaulo Matos 8*890146b1SPaulo Matos // CHECK-LABEL: @handle( 9*890146b1SPaulo Matos // CHECK-NEXT: entry: 10*890146b1SPaulo Matos // CHECK-NEXT: [[OBJ_ADDR:%.*]] = alloca ptr addrspace(10), align 1 11*890146b1SPaulo Matos // CHECK-NEXT: store ptr addrspace(10) [[OBJ:%.*]], ptr [[OBJ_ADDR]], align 1 12*890146b1SPaulo Matos // CHECK-NEXT: [[TMP0:%.*]] = load ptr addrspace(10), ptr [[OBJ_ADDR]], align 1 13*890146b1SPaulo Matos // CHECK-NEXT: call void @helper(ptr addrspace(10) [[TMP0]]) 14*890146b1SPaulo Matos // CHECK-NEXT: ret void 15*890146b1SPaulo Matos // handle(externref_t obj)16*890146b1SPaulo Matosvoid handle(externref_t obj) { 17*890146b1SPaulo Matos helper(obj); 18*890146b1SPaulo Matos } 19