Remove use of __IWMMXT__.

This commit is contained in:
Nick Clifton 2003-03-30 10:39:22 +00:00
parent 71900fe836
commit 3a3d6f654d
7 changed files with 23 additions and 43 deletions

View File

@ -1,3 +1,18 @@
2003-03-30 Nick Clifton <nickc@redhat.com>
* configure.in (CON_FLAGS): Remove.
(COPRO): Unconditionally include iwmmxt.o.
* configure: Regenerate.
* Makefile.in (CON_FLAGS): Remove.
* armcopro.c: Remove use of __IWMMXT__ flag.
* wrapper.c: Likewise.
* armemu.c: Likewise.
Add explanatory comment for suppressed code.
2003-03-27 Nick Clifton <nickc@redhat.com>
* armos.c (ARMul_OsHandleSWI): Catch SWIs for unhandled vectors.
2003-03-27 Nick Clifton <nickc@redhat.com> 2003-03-27 Nick Clifton <nickc@redhat.com>
* configure.in: (CON_FLAGS): Define and intialise. * configure.in: (CON_FLAGS): Define and intialise.
@ -15,7 +30,6 @@
(ARMul_Abort): Catch branches through uninitialised vectors. (ARMul_Abort): Catch branches through uninitialised vectors.
* armos.c (softevtorcode): Update comment. * armos.c (softevtorcode): Update comment.
(ARMul_OsInit): Use ARMUndefinedInstrV. (ARMul_OsInit): Use ARMUndefinedInstrV.
(ARMul_OsHandleSWI): Catch SWIs for unhandled vectors.
* wrapper.c (sim_create_inferior): Handle iWMMXt processor type. * wrapper.c (sim_create_inferior): Handle iWMMXt processor type.
(sim_store_register): Handle iWMMXt registers. (sim_store_register): Handle iWMMXt registers.
(sim_fetch_register): Handle iWMMXt registers. (sim_fetch_register): Handle iWMMXt registers.

View File

@ -34,10 +34,6 @@ armcopro.o: armcopro.c armdefs.h
maverick.o: maverick.c armdefs.h maverick.o: maverick.c armdefs.h
iwmmxt.o: iwmmxt.c iwmmxt.h armdefs.h iwmmxt.o: iwmmxt.c iwmmxt.h armdefs.h
CON_FLAGS=@CON_FLAGS@
ALL_CFLAGS += $(CON_FLAGS)
armemu26.o: armemu.c armdefs.h armemu.h armemu26.o: armemu.c armdefs.h armemu.h
$(CC) -c $(srcdir)/armemu.c -o armemu26.o $(ALL_CFLAGS) $(CC) -c $(srcdir)/armemu.c -o armemu26.o $(ALL_CFLAGS)

View File

@ -19,9 +19,7 @@
#include "armos.h" #include "armos.h"
#include "armemu.h" #include "armemu.h"
#include "ansidecl.h" #include "ansidecl.h"
#ifdef __IWMMXT__
#include "iwmmxt.h" #include "iwmmxt.h"
#endif
/* Dummy Co-processors. */ /* Dummy Co-processors. */
@ -1368,7 +1366,6 @@ ARMul_CoProInit (ARMul_State * state)
MMUMRC, MMUMCR, NULL, MMURead, MMUWrite); MMUMRC, MMUMCR, NULL, MMURead, MMUWrite);
} }
#ifdef __IWMMXT__
if (state->is_iWMMXt) if (state->is_iWMMXt)
{ {
ARMul_CoProAttach (state, 0, NULL, NULL, IwmmxtLDC, IwmmxtSTC, ARMul_CoProAttach (state, 0, NULL, NULL, IwmmxtLDC, IwmmxtSTC,
@ -1377,7 +1374,7 @@ ARMul_CoProInit (ARMul_State * state)
ARMul_CoProAttach (state, 1, NULL, NULL, NULL, NULL, ARMul_CoProAttach (state, 1, NULL, NULL, NULL, NULL,
IwmmxtMRC, IwmmxtMCR, IwmmxtCDP, NULL, NULL); IwmmxtMRC, IwmmxtMCR, IwmmxtCDP, NULL, NULL);
} }
#endif
/* No handlers below here. */ /* No handlers below here. */
/* Call all the initialisation routines. */ /* Call all the initialisation routines. */

View File

@ -19,9 +19,7 @@
#include "armdefs.h" #include "armdefs.h"
#include "armemu.h" #include "armemu.h"
#include "armos.h" #include "armos.h"
#ifdef __IWMMXT__
#include "iwmmxt.h" #include "iwmmxt.h"
#endif
static ARMword GetDPRegRHS (ARMul_State *, ARMword); static ARMword GetDPRegRHS (ARMul_State *, ARMword);
static ARMword GetDPSRegRHS (ARMul_State *, ARMword); static ARMword GetDPSRegRHS (ARMul_State *, ARMword);
@ -377,14 +375,12 @@ ARMul_Emulate26 (ARMul_State * state)
if (state->EventSet) if (state->EventSet)
ARMul_EnvokeEvent (state); ARMul_EnvokeEvent (state);
#if 0 #if 0 /* Enable this for a helpful bit of debugging when tracing is needed. */
/* Enable this for a helpful bit of debugging when tracing is needed. */
fprintf (stderr, "pc: %x, instr: %x\n", pc & ~1, instr); fprintf (stderr, "pc: %x, instr: %x\n", pc & ~1, instr);
if (instr == 0) if (instr == 0)
abort (); abort ();
#endif #endif
#ifdef __IWMMXT__ #if 0 /* Enable this code to help track down stack alignment bugs. */
#if 0
{ {
static ARMword old_sp = -1; static ARMword old_sp = -1;
@ -395,7 +391,6 @@ ARMul_Emulate26 (ARMul_State * state)
pc & ~1, old_sp, (old_sp % 8) ? " [UNALIGNED!]" : ""); pc & ~1, old_sp, (old_sp % 8) ? " [UNALIGNED!]" : "");
} }
} }
#endif
#endif #endif
if (state->Exception) if (state->Exception)
@ -509,12 +504,10 @@ ARMul_Emulate26 (ARMul_State * state)
else if ((instr & 0xFC70F000) == 0xF450F000) else if ((instr & 0xFC70F000) == 0xF450F000)
/* The PLD instruction. Ignored. */ /* The PLD instruction. Ignored. */
goto donext; goto donext;
#ifdef __IWMMXT__
else if ( ((instr & 0xfe500f00) == 0xfc100100) else if ( ((instr & 0xfe500f00) == 0xfc100100)
|| ((instr & 0xfe500f00) == 0xfc000100)) || ((instr & 0xfe500f00) == 0xfc000100))
/* wldrw and wstrw are unconditional. */ /* wldrw and wstrw are unconditional. */
goto mainswitch; goto mainswitch;
#endif
else else
/* UNDEFINED in v5, UNPREDICTABLE in v3, v4, non executed in v1, v2. */ /* UNDEFINED in v5, UNPREDICTABLE in v3, v4, non executed in v1, v2. */
ARMul_UndefInstr (state, instr); ARMul_UndefInstr (state, instr);
@ -712,10 +705,9 @@ check_PMUintr:
goto donext; goto donext;
} }
} }
#ifdef __IWMMXT__
if (ARMul_HandleIwmmxt (state, instr)) if (ARMul_HandleIwmmxt (state, instr))
goto donext; goto donext;
#endif
} }
switch ((int) BITS (20, 27)) switch ((int) BITS (20, 27))

11
sim/arm/configure vendored
View File

@ -3534,15 +3534,7 @@ fi
done done
COPRO="armcopro.o maverick.o" COPRO="armcopro.o maverick.o iwmmxt.o"
CON_FLAGS=
case x$target_alias in
xxscale-*)
COPRO="armcopro.o maverick.o iwmmxt.o"
CON_FLAGS=-D__IWMMXT__
;;
esac
@ -3756,7 +3748,6 @@ s%@sim_stdio@%$sim_stdio%g
s%@sim_trace@%$sim_trace%g s%@sim_trace@%$sim_trace%g
s%@sim_profile@%$sim_profile%g s%@sim_profile@%$sim_profile%g
s%@EXEEXT@%$EXEEXT%g s%@EXEEXT@%$EXEEXT%g
s%@CON_FLAGS@%$CON_FLAGS%g
s%@COPRO@%$COPRO%g s%@COPRO@%$COPRO%g
CEOF CEOF

View File

@ -7,16 +7,8 @@ SIM_AC_COMMON
AC_CHECK_HEADERS(unistd.h) AC_CHECK_HEADERS(unistd.h)
COPRO="armcopro.o maverick.o" COPRO="armcopro.o maverick.o iwmmxt.o"
CON_FLAGS=
case x$target_alias in
xxscale-*)
COPRO="armcopro.o maverick.o iwmmxt.o"
CON_FLAGS=-D__IWMMXT__
;;
esac
AC_SUBST(CON_FLAGS)
AC_SUBST(COPRO) AC_SUBST(COPRO)
SIM_AC_OUTPUT SIM_AC_OUTPUT

View File

@ -505,7 +505,6 @@ sim_store_register (sd, rn, memory, length)
memcpy (&DSPsc, memory, sizeof DSPsc); memcpy (&DSPsc, memory, sizeof DSPsc);
return sizeof DSPsc; return sizeof DSPsc;
#ifdef __IWMMXT__
case SIM_ARM_IWMMXT_COP0R0_REGNUM: case SIM_ARM_IWMMXT_COP0R0_REGNUM:
case SIM_ARM_IWMMXT_COP0R1_REGNUM: case SIM_ARM_IWMMXT_COP0R1_REGNUM:
case SIM_ARM_IWMMXT_COP0R2_REGNUM: case SIM_ARM_IWMMXT_COP0R2_REGNUM:
@ -539,7 +538,7 @@ sim_store_register (sd, rn, memory, length)
case SIM_ARM_IWMMXT_COP1R14_REGNUM: case SIM_ARM_IWMMXT_COP1R14_REGNUM:
case SIM_ARM_IWMMXT_COP1R15_REGNUM: case SIM_ARM_IWMMXT_COP1R15_REGNUM:
return Store_Iwmmxt_Register (rn - SIM_ARM_IWMMXT_COP0R0_REGNUM, memory); return Store_Iwmmxt_Register (rn - SIM_ARM_IWMMXT_COP0R0_REGNUM, memory);
#endif
default: default:
return 0; return 0;
} }
@ -619,7 +618,6 @@ sim_fetch_register (sd, rn, memory, length)
memcpy (memory, & DSPsc, sizeof DSPsc); memcpy (memory, & DSPsc, sizeof DSPsc);
return sizeof DSPsc; return sizeof DSPsc;
#ifdef __IWMMXT__
case SIM_ARM_IWMMXT_COP0R0_REGNUM: case SIM_ARM_IWMMXT_COP0R0_REGNUM:
case SIM_ARM_IWMMXT_COP0R1_REGNUM: case SIM_ARM_IWMMXT_COP0R1_REGNUM:
case SIM_ARM_IWMMXT_COP0R2_REGNUM: case SIM_ARM_IWMMXT_COP0R2_REGNUM:
@ -653,7 +651,7 @@ sim_fetch_register (sd, rn, memory, length)
case SIM_ARM_IWMMXT_COP1R14_REGNUM: case SIM_ARM_IWMMXT_COP1R14_REGNUM:
case SIM_ARM_IWMMXT_COP1R15_REGNUM: case SIM_ARM_IWMMXT_COP1R15_REGNUM:
return Fetch_Iwmmxt_Register (rn - SIM_ARM_IWMMXT_COP0R0_REGNUM, memory); return Fetch_Iwmmxt_Register (rn - SIM_ARM_IWMMXT_COP0R0_REGNUM, memory);
#endif
default: default:
return 0; return 0;
} }