Commit 7ec47eadc7048435b54bc53ccb41307851098409

Authored by pbrook
1 parent adb86c37

Speed up m68k by 20%.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2855 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 8 additions and 8 deletions
target-m68k/op.c
... ... @@ -48,23 +48,23 @@ static long qreg_offsets[] = {
48 48 uint32_t
49 49 get_op(int qreg)
50 50 {
51   - if (qreg == QREG_T0) {
  51 + if (qreg >= TARGET_NUM_QREGS) {
  52 + return env->qregs[qreg - TARGET_NUM_QREGS];
  53 + } else if (qreg == QREG_T0) {
52 54 return T0;
53   - } else if (qreg < TARGET_NUM_QREGS) {
54   - return *(uint32_t *)(((long)env) + qreg_offsets[qreg]);
55 55 } else {
56   - return env->qregs[qreg - TARGET_NUM_QREGS];
  56 + return *(uint32_t *)(((long)env) + qreg_offsets[qreg]);
57 57 }
58 58 }
59 59  
60 60 void set_op(int qreg, uint32_t val)
61 61 {
62   - if (qreg == QREG_T0) {
  62 + if (qreg >= TARGET_NUM_QREGS) {
  63 + env->qregs[qreg - TARGET_NUM_QREGS] = val;
  64 + } else if (qreg == QREG_T0) {
63 65 T0 = val;
64   - } else if (qreg < TARGET_NUM_QREGS) {
65   - *(uint32_t *)(((long)env) + qreg_offsets[qreg]) = val;
66 66 } else {
67   - env->qregs[qreg - TARGET_NUM_QREGS] = val;
  67 + *(uint32_t *)(((long)env) + qreg_offsets[qreg]) = val;
68 68 }
69 69 }
70 70  
... ...