Refactoring.  Wrap the following pseudocode from the ARM Architecture Reference Manul:

// if d == 15 then         // Can only occur for encoding A1
//     ALUWritePC(result); // setflags is always FALSE here
// else
//     R[d] = result;
//     if setflags then
//         APSR.N = result<31>;
//         APSR.Z = IsZeroBit(result);
//         APSR.C = carry;
//         // APSR.V unchanged

into a helper method WriteCoreRegisterWithFlags, and modified the existing methods
to take advantage of it.

Plus add two emulation methods (declaration only for now) for ORR (immediate) and ORR (register).


git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@125701 91177308-0d34-0410-b5e6-96231b3b80d8
2 files changed