Skip to content

Commit 77c43e1

Browse files
committed
[X86][FastISel] X86SelectIntToFP - don't assume value type is simple.
Fixes #68068
1 parent 05137ec commit 77c43e1

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

llvm/lib/Target/X86/X86FastISel.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2391,7 +2391,7 @@ bool X86FastISel::X86SelectIntToFP(const Instruction *I, bool IsSigned) {
23912391
return false;
23922392

23932393
// TODO: We could sign extend narrower types.
2394-
MVT SrcVT = TLI.getSimpleValueType(DL, I->getOperand(0)->getType());
2394+
EVT SrcVT = TLI.getValueType(DL, I->getOperand(0)->getType());
23952395
if (SrcVT != MVT::i32 && SrcVT != MVT::i64)
23962396
return false;
23972397

llvm/test/CodeGen/X86/pr68068.ll

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2+
; RUN: llc < %s -mtriple=x86_64-- -fast-isel=1 | FileCheck %s
3+
4+
define float @f() "target-features"="+avx512f" {
5+
; CHECK-LABEL: f:
6+
; CHECK: # %bb.0:
7+
; CHECK-NEXT: vxorps %xmm0, %xmm0, %xmm0
8+
; CHECK-NEXT: retq
9+
%1 = uitofp i15 poison to float
10+
ret float %1
11+
}

0 commit comments

Comments
 (0)