qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 0/2] fix ARMv7 data processing instructions


From: Juha Riihimäki
Subject: [Qemu-devel] [PATCH 0/2] fix ARMv7 data processing instructions
Date: Wed, 6 May 2009 09:15:06 +0300

Time passes... if there are no further comments I'd very much like to see this patch set integrated to avoid having to maintain delta code for an obvious defect fix. Since the helper function was already corrected in svn commit 7034, only the other two patches are relevant today. In order to avoid writing new code that uses deprecated methods and/or variables, this fix has been divided into two parts: the first patch modernizes relevant parts of target-arm/translate.c and the second patch provides the actual defect fix and should be applied after the first patch. For this version of the patch set I have also converted the new macro store_reg_bx into a static function as suggested by Laurent Desnogues earlier.


Juha

On Mar 27, 2009, at 20:24, Juha Riihimäki wrote:


On Mar 27, 2009, at 15:53, ext Paul Brook wrote:

On Friday 27 March 2009, Juha Riihimäki wrote:
Any further comments? Or perhaps import the patch?

It looks like you've got several changes all mixed together, including
bugfixes, cleanups and new features. Please divide into logically
separate
patches.

Yes, there are three logical parts, I have separated them here and
included as separate attachments that can be applied separately in the
numerical order:

i) A bug fix patch (diff1) which makes the add_cc helper function use
its parameters instead of the temporary variables. This is required
for the other patches to work properly. This bug was also reported by
Torbjörn Andersson on this list couple of days ago.

ii) A patch (diff2) to get rid of global temporary variable usage
cpu_T[x] in the ARM data processing instructions. I suppose this is
valid since the cpu_T[x] variables are tagged with a "FIXME: These
should be removed" comment in the beginning of the file. In order to
accomplish this I introduced a new function, gen_add_carry, to replace
the existing gen_adc_T0_T1 usage. I also modified the behavior of an
existing function, gen_exception_return, which was only used within
the ARM data processing instructions handling so the change had no
effect on other code.

iii) A patch (diff3) to add support for the ARMv7 behavior in the ARM
data processing instructions when destination register is R15.

Is this better?


Juha

<diff1><diff2><diff3>





reply via email to

[Prev in Thread] Current Thread [Next in Thread]