mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-25 16:29:20 +00:00
The t2MOVi16 and t2MOVTi16 instructions do not set CPSR. Trying to add
a CPSR operand to them causes an assertion failure, so apparently these instructions haven't been getting a lot of use. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107147 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f500cbdcb1
commit
1ab38469df
@ -224,14 +224,14 @@ void llvm::emitT2RegPlusImmediate(MachineBasicBlock &MBB,
|
||||
// Use a movw to materialize the 16-bit constant.
|
||||
BuildMI(MBB, MBBI, dl, TII.get(ARM::t2MOVi16), DestReg)
|
||||
.addImm(NumBytes)
|
||||
.addImm((unsigned)Pred).addReg(PredReg).addReg(0);
|
||||
.addImm((unsigned)Pred).addReg(PredReg);
|
||||
Fits = true;
|
||||
} else if ((NumBytes & 0xffff) == 0) {
|
||||
// Use a movt to materialize the 32-bit constant.
|
||||
BuildMI(MBB, MBBI, dl, TII.get(ARM::t2MOVTi16), DestReg)
|
||||
.addReg(DestReg)
|
||||
.addImm(NumBytes >> 16)
|
||||
.addImm((unsigned)Pred).addReg(PredReg).addReg(0);
|
||||
.addImm((unsigned)Pred).addReg(PredReg);
|
||||
Fits = true;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user