binutils-gdb/sim
Nick Clifton 73cb0348b2 Add support for ARM v6 instructions.
* Makefile.in (SIM_EXTRA_CFLAGS): Add -lm.
	* armdefs.h (ARMdval, ARMfval): New types.
	(ARM_VFP_reg): New union.
	(struct ARMul_State): Add VFP_Reg and FPSCR fields.
	(VFP_fval, VFP_uword, VFP_sword, VFP_dval, VFP_dword): Accessor
	macros for the new VFP_Reg field.
	* armemu.c (handle_v6_insn): Add code to handle MOVW, MOVT,
	QADD16, QASX, QSAX, QSUB16, QADD8, QSUB8, UADD16, USUB16, UADD8,
	USUB8, SEL, REV, REV16, RBIT, BFC, BFI, SBFX and UBFX
	instructions.
	(handle_VFP_move): New function.
	(ARMul_Emulate16): Add checks for newly supported v6
	instructions.  Add support for VMRS, VMOV and MRC instructions.
	(Multiply64): Allow nRdHi == nRm and/or nRdLo == nRm when
	operating in v6 mode.
	* armemu.h (t_resolved): Define.
	* armsupp.c: Include math.h.
	(handle_VFP_xfer): New function.  Handles VMOV, VSTM, VSTR, VPUSH,
	VSTM, VLDM and VPOP instructions.
	(ARMul_LDC): Test for co-processor 10 or 11 and pass call to the
	new handle_VFP_xfer function.
	(ARMul_STC): Likewise.
	(handle_VFP_op): New function.  Handles VMLA, VMLS, VNMLA, VNMLS,
	VNMUL, VMUL, VADD, VSUB, VDIV, VMOV, VABS, VNEG, VSQRT, VCMP,
	VCMPE and VCVT instructions.
	(ARMul_CDP): Test for co-processor 10 or 11 and pass call to the
	new handle_VFP_op function.
	* thumbemu.c (tBIT, tBITS, ntBIT, ntBITS): New macros.
	(test_cond): New function.  Tests a condition and returns non-zero
	if the condition has been met.
	(handle_IT_block): New function.
	(in_IT_block): New function.
	(IT_block_allow): New function.
	(ThumbExpandImm): New function.
	(handle_T2_insn): New function.  Handles T2 thumb instructions.
	(handle_v6_thumb_insn): Add next_instr and pc parameters.
	(ARMul_ThumbDecode): Add support for IT blocks.  Add support for
	v6 instructions.
	* wrapper.c (sim_create_inferior): Detect a thumb address and call
	SETT appropriately.
2015-06-28 19:14:36 +01:00
..
arm Add support for ARM v6 instructions. 2015-06-28 19:14:36 +01:00
avr sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
bfin sim: trace: add a basic cpu register class 2015-06-24 10:40:17 -04:00
common sim: trace: drop unused trace_one_insn 2015-06-24 11:10:30 -04:00
cr16 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
cris sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
d10v sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
erc32 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
frv sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
ft32 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
h8300 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
igen sim: update configure.in->configure.ac docs 2015-06-12 12:11:21 -04:00
iq2000 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
lm32 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
m32c sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
m32r sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
m68hc11 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
mcore sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
microblaze sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
mips sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
mn10300 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
moxie sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
msp430 sim: trace: add a basic cpu register class 2015-06-24 10:40:17 -04:00
ppc sim: update configure.in->configure.ac docs 2015-06-12 12:11:21 -04:00
rl78 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
rx sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
sh sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
sh64 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
testsuite Do unset_currtarget_info ldscript for all simulator testsuites. 2015-04-13 01:56:04 +02:00
v850 sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
.gitignore
ChangeLog sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
configure sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
configure.ac sim: use AS_HELP_STRING everywhere 2015-06-23 15:02:08 -04:00
configure.tgt sim: testsuite: make subdir unconditional 2015-03-29 11:51:13 -04:00
MAINTAINERS
Makefile.in
README-HACKING sim: update configure.in->configure.ac docs 2015-06-12 12:11:21 -04:00