From aad035c4b5758d38f318f80dc4948fe4406f2ebe Mon Sep 17 00:00:00 2001 From: Nekotekina Date: Sun, 19 Mar 2017 21:12:50 +0300 Subject: [PATCH] LLVM: fix FCTIWZ, FCTIDZ --- rpcs3/Emu/Cell/PPUTranslator.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/Cell/PPUTranslator.cpp b/rpcs3/Emu/Cell/PPUTranslator.cpp index dfd17ea4e9..36b7f4afd7 100644 --- a/rpcs3/Emu/Cell/PPUTranslator.cpp +++ b/rpcs3/Emu/Cell/PPUTranslator.cpp @@ -3703,7 +3703,7 @@ void PPUTranslator::FCTIW(ppu_opcode_t op) void PPUTranslator::FCTIWZ(ppu_opcode_t op) { const auto b = GetFpr(op.frb); - SetFpr(op.frd, m_ir->CreateFPToSI(b, GetType())); + SetFpr(op.frd, Call(GetType(), "llvm.x86.sse2.cvttsd2si", m_ir->CreateInsertElement(GetUndef(), b, uint64_t{0}))); } void PPUTranslator::FDIV(ppu_opcode_t op) @@ -3949,7 +3949,7 @@ void PPUTranslator::FCTID(ppu_opcode_t op) void PPUTranslator::FCTIDZ(ppu_opcode_t op) { const auto b = GetFpr(op.frb); - SetFpr(op.frd, m_ir->CreateFPToSI(b, GetType())); + SetFpr(op.frd, Call(GetType(), "llvm.x86.sse2.cvttsd2si64", m_ir->CreateInsertElement(GetUndef(), b, uint64_t{0}))); } void PPUTranslator::FCFID(ppu_opcode_t op)