brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.3 KiB · d75e993 Raw
41 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 52; RUN: llc -mtriple=amdgcn -mcpu=gfx90a %s -o - | FileCheck %s3 4define amdgpu_ps float @kill_true(i1 %.not) {5; CHECK-LABEL: kill_true:6; CHECK:       ; %bb.0: ; %entry7; CHECK-NEXT:    s_mov_b64 s[0:1], exec8; CHECK-NEXT:    s_wqm_b64 exec, exec9; CHECK-NEXT:    v_and_b32_e32 v0, 1, v010; CHECK-NEXT:    v_cmp_ne_u32_e32 vcc, 1, v011; CHECK-NEXT:    s_and_saveexec_b64 s[2:3], vcc12; CHECK-NEXT:    s_cbranch_execz .LBB0_213; CHECK-NEXT:  ; %bb.1: ; %if114; CHECK-NEXT:    s_mov_b32 s4, 015; CHECK-NEXT:    ; kill: def $sgpr4 killed $sgpr4 killed $exec16; CHECK-NEXT:    v_pk_mov_b32 v[0:1], 0, 017; CHECK-NEXT:    v_mov_b32_e32 v2, s418; CHECK-NEXT:    flat_store_dword v[0:1], v219; CHECK-NEXT:  .LBB0_2: ; %endif120; CHECK-NEXT:    s_or_b64 exec, exec, s[2:3]21; CHECK-NEXT:    s_and_b64 exec, exec, s[0:1]22; CHECK-NEXT:    v_mov_b32_e32 v0, 023; CHECK-NEXT:    s_waitcnt vmcnt(0) lgkmcnt(0)24; CHECK-NEXT:    ; return to shader part epilog25entry:26  br i1 %.not, label %endif1, label %if127 28if1:29  %C = call float @llvm.amdgcn.wqm.f32(float 0.000000e+00)30  store float %C, ptr null, align 431  br label %endif132 33endif1:34  call void @llvm.amdgcn.kill(i1 true)35  ret float 0.000000e+0036}37 38declare void @llvm.amdgcn.kill(i1)39 40declare float @llvm.amdgcn.wqm.f32(float)41