brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 02825e3 Raw
44 lines · plain
1; RUN: llc -verify-machineinstrs -O0 -mtriple=spirv64-unknown-unknown %s -o - | FileCheck %s2; RUN: %if spirv-tools %{ llc -O0 -mtriple=spirv64-unknown-unknown %s -o - -filetype=obj | spirv-val %}3 4; CHECK-LABEL: Begin function original_testcase5define fastcc void @original_testcase() {6top:7  %0 = alloca [1 x ptr], align 48  ; CHECK: OpCompositeInsert9  %1 = insertvalue [1 x ptr] zeroinitializer, ptr poison, 010  store [1 x ptr] %1, ptr %011  ret void12}13 14; CHECK-LABEL: Begin function additional_testcases15define fastcc void @additional_testcases() {16top:17  %0 = alloca [2 x ptr], align 418 19 20  ; Test with different pointer types21  ; CHECK: OpCompositeInsert22  %1 = insertvalue [1 x ptr] zeroinitializer, ptr undef, 023  ; CHECK: OpStore24  store [1 x ptr] %1, ptr %025 26  ; CHECK-NEXT: OpCompositeInsert27  %2 = insertvalue {ptr, i32} zeroinitializer, ptr poison, 028  ; CHECK: OpStore29  store {ptr, i32} %2, ptr %030 31  ; CHECK-NEXT: OpCompositeInsert32  %3 = insertvalue {ptr, ptr} undef, ptr null, 033  ; CHECK: OpStore34  store {ptr, ptr} %3, ptr %035 36  ; Test with undef aggregate37  ; CHECK-NEXT: OpCompositeInsert38  %4 = insertvalue [1 x ptr] undef, ptr undef, 039  ; CHECK: OpStore40  store [1 x ptr] %4, ptr %041 42  ret void43}44