mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 10:42:39 +01:00
385d2085b8
If the liveness of a physical register was invalid, this was attempting to iterate the subregisters of all register uses of the instruction, which would assert when it encountered an implicit virtual register operand. llvm-svn: 340763
22 lines
647 B
YAML
22 lines
647 B
YAML
# RUN: not llc -mtriple=amdgcn-amd-amdhsa -verify-machineinstrs -o /dev/null %s 2>&1 | FileCheck -check-prefix=ERROR %s
|
|
|
|
# When the verifier was detecting the invalid liveness for vcc, it would assert when trying to iterate the subregisters of the implicit virtual register use.
|
|
|
|
|
|
# ERROR: *** Bad machine code: Using an undefined physical register ***
|
|
# ERROR: instruction: S_ENDPGM implicit %0:vgpr_32, implicit $vcc
|
|
# ERROR: operand 1: implicit $vcc
|
|
|
|
...
|
|
|
|
name: invalid_implicit_physreg_use_with_implicit_virtreg
|
|
tracksRegLiveness: true
|
|
|
|
body: |
|
|
bb.0:
|
|
%0:vgpr_32 = IMPLICIT_DEF
|
|
S_ENDPGM implicit %0, implicit $vcc
|
|
|
|
...
|
|
|