mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-01 15:17:25 +00:00
[mips][msa] Test basic operations for the N32 ABI too.
Summary: This required adding instruction aliases for dneg. N64 will be enabled shortly but requires additional bugfixes. Reviewers: vkalintiris Reviewed By: vkalintiris Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D9341 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236489 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -3043,7 +3043,7 @@ MipsSETargetLowering::emitINSERT_DF_VIDX(MachineInstr *MI,
|
||||
|
||||
const TargetRegisterClass *VecRC = nullptr;
|
||||
const TargetRegisterClass *GPRRC =
|
||||
Subtarget.isGP64bit() ? &Mips::GPR64RegClass : &Mips::GPR32RegClass;
|
||||
Subtarget.isABI_N64() ? &Mips::GPR64RegClass : &Mips::GPR32RegClass;
|
||||
unsigned EltLog2Size;
|
||||
unsigned InsertOp = 0;
|
||||
unsigned InsveOp = 0;
|
||||
@@ -3121,8 +3121,9 @@ MipsSETargetLowering::emitINSERT_DF_VIDX(MachineInstr *MI,
|
||||
// sld.df inteprets $rt modulo the number of columns so we only need to negate
|
||||
// the lane index to do this.
|
||||
unsigned LaneTmp2 = RegInfo.createVirtualRegister(GPRRC);
|
||||
BuildMI(*BB, MI, DL, TII->get(Mips::SUB), LaneTmp2)
|
||||
.addReg(Mips::ZERO)
|
||||
BuildMI(*BB, MI, DL, TII->get(Subtarget.isABI_N64() ? Mips::DSUB : Mips::SUB),
|
||||
LaneTmp2)
|
||||
.addReg(Subtarget.isABI_N64() ? Mips::ZERO_64 : Mips::ZERO)
|
||||
.addReg(LaneReg);
|
||||
BuildMI(*BB, MI, DL, TII->get(Mips::SLD_B), Wd)
|
||||
.addReg(WdTmp2)
|
||||
|
||||
Reference in New Issue
Block a user