llvm-project/llvm/test/CodeGen/AMDGPU/optimize-exec-mask-pre-ra-no-fold-exec-copy.mir

33 lines
1.1 KiB
YAML

# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 6
# RUN: llc -mtriple=amdgcn -mcpu=gfx900 -run-pass=si-optimize-exec-masking-pre-ra -o - %s | FileCheck %s
# SIOptimizeExecMaskingPreRA should not attempt to fold the exec COPY
# into an instruction if it cannot check legality like for the
# INLINEASM instruction in this example.
---
name: fold-exec-copy-operand-index-out-of-bounds
tracksRegLiveness: true
body: |
; CHECK-LABEL: name: fold-exec-copy-operand-index-out-of-bounds
; CHECK: bb.0:
; CHECK-NEXT: successors: %bb.1(0x80000000)
; CHECK-NEXT: {{ $}}
; CHECK-NEXT: [[COPY:%[0-9]+]]:sgpr_64 = COPY $exec
; CHECK-NEXT: INLINEASM &"", 25 /* sideeffect mayload maystore attdialect */, 4194313 /* reguse:SGPR_64 */, [[COPY]]
; CHECK-NEXT: {{ $}}
; CHECK-NEXT: bb.1:
; CHECK-NEXT: SI_RETURN
bb.0:
successors: %bb.1(0x80000000)
%0:sgpr_64 = COPY $exec
INLINEASM &"", 25 /* sideeffect mayload maystore attdialect */, 4194313 /* reguse:SGPR_64 */, %0
bb.1:
SI_RETURN
...