Issue 95278
Summary [X86] [Crash] Assertion `isSimple() && "Expected a SimpleValueType!"' failed.
Labels new issue
Assignees
Reporter ienkovich
    FP vector extension test fails for skylake-avx512 CPU. Works fine for sapphirerapids CPU.
```
$ llc bugpoint-reduced-simplified.ll -mcpu=skylake-avx512
llc: /localdisk/ilyaenko/llvm-project/llvm/include/llvm/CodeGen/ValueTypes.h:307: llvm::MVT llvm::EVT::getSimpleVT() const: Assertion `isSimple() && "Expected a SimpleValueType!"' failed.
```
Simplified reproducer:
```
; ModuleID = 'bugpoint-reduced-simplified.bc'
source_filename = "LLVMDialectModule"
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: memory(argmem: readwrite)
define void @kernel(ptr %0, ptr %1) local_unnamed_addr #0 {
 %3 = load <1024 x half>, ptr %0, align 2
  %4 = fpext <1024 x half> %3 to <1024 x float>
  %5 = shufflevector <1024 x float> %4, <1024 x float> poison, <1 x i32> <i32 1022>
  %6 = tail call <1 x float> @llvm.minnum.v1f32(<1 x float> %5, <1 x float> poison)
  %7 = tail call <1 x float> @llvm.minnum.v1f32(<1 x float> poison, <1 x float> %6)
  %8 = extractelement <1 x float> %7, i64 0
  %9 = fptrunc float %8 to half
 store half %9, ptr %1, align 2
  ret void
}

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <1 x float> @llvm.minnum.v1f32(<1 x float>, <1 x float>) #1

attributes #0 = { memory(argmem: readwrite) }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }

!llvm.module.flags = !{!0}

!0 = !{i32 2, !"Debug Info Version", i32 3}
```
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to