diff options
author | Nick Clifton <nickc@redhat.com> | 2005-04-25 07:48:59 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2005-04-25 07:48:59 +0000 |
commit | 8207e0f24ed02f921d7eb24fd80ac919e38a36f7 (patch) | |
tree | 9bb01fd4e158a04fcc06289c39d2b7a400495e6e /sim/arm/arminit.c | |
parent | 02ddf1568180e41117d6d2804636e64775ac37b6 (diff) | |
download | gdb-8207e0f24ed02f921d7eb24fd80ac919e38a36f7.zip gdb-8207e0f24ed02f921d7eb24fd80ac919e38a36f7.tar.gz gdb-8207e0f24ed02f921d7eb24fd80ac919e38a36f7.tar.bz2 |
* armemu.c (handle_v6_insn): New function - emulate a few of the v6 instructions - the ones now generated by GCC.
(ARMulEmulate32): Call handle_v6_insn when a possible v6 insn is found.
* armdefs.h (struct ARMul_State): Add new field: is_v6.#
(ARM_v6_Prop): Define.
* arminit.c (ARMul_NewState): Initialise the v6 flag.
(ARMul_SelectProcessor): Determine if the v6 flag should be set.
* wrapper.c (sim_create_inferior): For unknown architectures, default to allowing the v6 instructions.
Diffstat (limited to 'sim/arm/arminit.c')
-rw-r--r-- | sim/arm/arminit.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sim/arm/arminit.c b/sim/arm/arminit.c index 4588787..544a0c1 100644 --- a/sim/arm/arminit.c +++ b/sim/arm/arminit.c @@ -129,6 +129,7 @@ ARMul_NewState (void) state->is_v5e = LOW; state->is_XScale = LOW; state->is_iWMMXt = LOW; + state->is_v6 = LOW; ARMul_Reset (state); @@ -161,6 +162,7 @@ ARMul_SelectProcessor (ARMul_State * state, unsigned properties) state->is_XScale = (properties & ARM_XScale_Prop) ? HIGH : LOW; state->is_iWMMXt = (properties & ARM_iWMMXt_Prop) ? HIGH : LOW; state->is_ep9312 = (properties & ARM_ep9312_Prop) ? HIGH : LOW; + state->is_v6 = (properties & ARM_v6_Prop) ? HIGH : LOW; /* Only initialse the coprocessor support once we know what kind of chip we are dealing with. */ |