- 07 Dec, 2010 5 commits
-
-
Peter Maydell authored
Correct the decoding of source and destination registers for the VFP forms of the VCVT instructions which convert between floating point and integer or fixed-point. Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Nathan Froyd <froydnj@codesourcery.com>
-
Peter Maydell authored
Correct ldrexd and strexd code to always read and write the high word of the 64-bit value from addr+4. Also make ldrexd and strexd agree that for a 64 bit value the address in env->exclusive_addr is that of the low word. This fixes the issues reported in https://bugs.launchpad.net/qemu/+bug/670883 Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Nathan Froyd <froydnj@codesourcery.com>
-
Adam Lackorzynski authored
Refine check on bkpt so that smc and undefined instruction encodings are handled as an undefined instruction and trap. Signed-off-by:
Adam Lackorzynski <adam@os.inf.tu-dresden.de> Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Nathan Froyd <froydnj@codesourcery.com>
-
Johan Bengtsson authored
The thumb2 decoder contained a mixup between the bit controlling doubling and the bit controlling if the operation was an add or a sub. Signed-off-by:
Johan Bengtsson <teofrastius@gmail.com> Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Nathan Froyd <froydnj@codesourcery.com>
-
Johan Bengtsson authored
The PKHxx instructions were not recognized by the thumb2 decoder. The solution provided in this changeset is identical to the arm-mode implementation. Signed-off-by:
Johan Bengtsson <teofrastius@gmail.com> Signed-off-by:
Peter Maydell <peter.maydell@linaro.org> Reviewed-by:
Nathan Froyd <froydnj@codesourcery.com>
-
- 30 Oct, 2010 1 commit
-
-
Stefan Weil authored
fprintf_function uses format checking with GCC_FMT_ATTR. Format errors were fixed in * target-i386/helper.c * target-mips/translate.c * target-ppc/translate.c Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by:
Stefan Weil <weil@mail.berlios.de> Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
- 01 Jul, 2010 1 commit
-
-
Chih-Min Chao authored
Signed-off-by:
Chih-Min Chao <cmchao@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 11 Jun, 2010 1 commit
-
-
Paul Brook authored
When combining multiple values as part of a NEON array load, do explcit shift/or rather than using gen_bfi. This voids redundant mask operations. Signed-off-by:
Paul Brook <paul@codesourcery.com>
-
- 25 Apr, 2010 1 commit
-
-
Blue Swirl authored
Value stored is never read. Signed-off-by:
Blue Swirl <blauwirbel@gmail.com>
-
- 08 Apr, 2010 2 commits
-
-
Juha Riihimäki authored
Signed-Off-By:
Riku Voipio <riku.voipio@nokia.com> Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Lars Munch authored
This patch fixes few resource leaks in the iwmmxt disassemble. Signed-off-by:
Lars Munch <lars@segv.dk> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 23 Mar, 2010 1 commit
-
-
Johan Bengtsson authored
Do not try to insert a conditional jump over next instruction when the condition code is AL as this will trigger an internal error. Signed-off-by:
Johan Bengtsson <teofrastius@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 13 Mar, 2010 1 commit
-
-
Adam Lackorzynski authored
The rfe instruction can be used with any register, not just sp. Adjust the condition check accordingly. Signed-off-by:
Adam Lackorzynski <adam@os.inf.tu-dresden.de> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 06 Mar, 2010 1 commit
-
-
Adam Lackorzynski authored
There's a return missing in the srs handling which leads to srs always being treated an an invalid op. Signed-off-by:
Adam Lackorzynski <adam@os.inf.tu-dresden.de> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 28 Feb, 2010 2 commits
-
-
Juha Riihimäki authored
implementation only widened the 32bit source vector elements into a 64bit destination vector but forgot to perform the actual shifting operation. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Signed-off-by:
Riku Voipio <riku.voipio@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Riku Voipio authored
The rounding/truncating options were inverted. truncating was done when rounding was meant and vice verse. Signed-off-by:
Riku Voipio <riku.voipio@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 23 Feb, 2010 1 commit
-
-
Paul Brook authored
Fix temporary handling in cp15 tls register load/store. Signed-off-by:
Paul Brook <paul@codesourcery.com>
-
- 19 Feb, 2010 2 commits
-
-
Rabin Vincent authored
Support the "subs pc, lr" Thumb-2 exception return instruction. Signed-off-by:
Rabin Vincent <rabin@rab.in> Signed-off-by:
Paul Brook <paul@codesourcery.com>
-
Rabin Vincent authored
The Thumb CPS currently does not work correctly: CPSID touches more bits than the instruction wants to, and CPSIE does nothing. Fix it by passing the correct mask (the "affect" bits) and value. Signed-off-by:
Rabin Vincent <rabin@rab.in>
-
- 06 Feb, 2010 1 commit
-
-
Riku Voipio authored
Access the cp15.c13 TLS registers directly with TCG ops instead of with a slow helper. If the the cp15 read/write was not TLS register access, fall back to the cp15 helper. This makes accessing __thread variables in linux-user when apps are compiled with -mtp=cp15 possible. legal cp15 register to acces from linux-user are already checked in cp15_user_ok. While at it, make the cp15.c13 Thread ID registers available only on ARMv6K and newer. Signed-off-by:
Riku Voipio <riku.voipio@nokia.com>
-
- 05 Feb, 2010 1 commit
-
-
Riku Voipio authored
Access the cp15.c13 TLS registers directly with TCG ops instead of with a slow helper. If the the cp15 read/write was not TLS register access, fall back to the cp15 helper. This makes accessing __thread variables in linux-user when apps are compiled with -mtp=cp15 possible. legal cp15 register to acces from linux-user are already checked in cp15_user_ok. While at it, make the cp15.c13 Thread ID registers available only on ARMv6K and newer. Signed-off-by:
Riku Voipio <riku.voipio@nokia.com>
-
- 23 Dec, 2009 1 commit
-
-
Aurelien Jarno authored
Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 22 Nov, 2009 1 commit
-
-
Paul Brook authored
Implement ARMv6 atomic ops (ldrex/strex) using the same trick as PPC. Signed-off-by:
Paul Brook <paul@codesourcery.com>
-
- 19 Nov, 2009 1 commit
-
-
Paul Brook authored
Implement the ARM VFP half precision floating point extensions. Signed-off-by:
Paul Brook <paul@codesourcery.com>
-
- 27 Oct, 2009 5 commits
-
-
Aurelien Jarno authored
Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Juha Riihimäki authored
Shift by immediate value is incorrectly overwritten by a temporary variable in the processing of NEON vsri, vshl and vsli instructions. This patch has been revised to also include a fix for the special case where the code would previously try to shift an integer value over 31 bits left/right. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Juha Riihimäki authored
All other bits except for the EN in the VFP FPEXC register are defined as subarchitecture specific and real functionality for any of the other bits has not been implemented in QEMU. However, current code allows modifying all bits in the VFP FPEXC register leading to problems when guest code is writing 1's to the subarchitecture specific bits and checking whether the bits stay up to verify the existence of functionality which in fact does not exist in QEMU. This patch has been revised to include the same behavior change in the gdb register write function. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Juha Riihimäki authored
Add support for NEON vld1.64 and vst1.64 instructions. This patch is revised to follow more closely the specification and raises undefined exception if 64bit element size is used for vld2/vst2 or vld4/vst4 instructions. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Juha Riihimäki authored
In the existing code shift value is clobbered during the pass loop. This patch changes the code so that it stores the intermediate result in the target neon register directly and eliminates the need to use a temporary to hold the intermediate value thus leaving the shift value in the temporary variable intact. This is a new patch in this version of the patch series. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 26 Oct, 2009 1 commit
-
-
Juha Riihimäki authored
tmp4 and tmp5 temporary variables are allocated using tcg_const_i32 but incorrectly released using dead_tmp which will cause resource leak tracking to report false leaks. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 23 Oct, 2009 2 commits
-
-
Juha.Riihimaki@nokia.com authored
Current implementation of thumb mul instruction is implemented as a 32x32->64 multiply which then uses only 32 least significant bits of the result. Replace that with a simple 32x32->32 multiply. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Juha Riihimäki authored
Revised patch for getting rid of tcg temporary variable leaks in target-arm/translate.c. This version also includes the leak patch for gen_set_cpsr macro, now converted as a static inline function, which I sent earlier as a separate patch on top of this patch. Signed-off-by:
Juha Riihimäki <juha.riihimaki@nokia.com> Acked-by:
Laurent Desnogues <laurent.desnogues@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 18 Oct, 2009 2 commits
-
-
Aurelien Jarno authored
Use load_reg_var() instead of accessing cpu_R[rn] directly to generate correct code when rn = 15. Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Aurelien Jarno authored
Use load_reg_var() instead of accessing cpu_R[rn] directly to generate correct code when rn = 15. Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
- 17 Oct, 2009 6 commits
-
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-
Filip Navara authored
Signed-off-by:
Filip Navara <filip.navara@gmail.com> Signed-off-by:
Aurelien Jarno <aurelien@aurel32.net>
-