blob: dc5b52caff8ffdd956c59f57eee554ff94583981 [file] [edit]
// RUN: llvm-tblgen -warn-on-skipped-patterns -gen-global-isel -I %p/../../../include %s -I %p/../Common -o /dev/null 2>&1 | FileCheck %s
include "llvm/Target/Target.td"
include "GlobalISelEmitterCommon.td"
// A REG_SEQUENCE whose super register class has no subclass containing the
// requested subreg index used to crash the GlobalISel emitter on an empty
// std::optional dereference. It now skips the pattern with failedImport.
def bogus_sub : SubRegIndex<32>;
// CHECK: warning: Skipped pattern: REG_SEQUENCE subreg index is incompatible with inferred reg class
def : Pat<(i32 (add GPR32:$a, GPR32:$b)),
(REG_SEQUENCE GPR32, GPR32:$a, bogus_sub, GPR32:$b, bogus_sub)>;