]>
git.ipfire.org Git - thirdparty/valgrind.git/log
Julian Seward [Fri, 11 Mar 2005 02:47:32 +0000 (02:47 +0000)]
Fix PRE wrapper for sys_exit.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3268
Nicholas Nethercote [Fri, 11 Mar 2005 02:43:17 +0000 (02:43 +0000)]
Fix broken xml tags.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3267
Julian Seward [Fri, 11 Mar 2005 00:22:10 +0000 (00:22 +0000)]
These files are no longer needed. Bye!
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3266
Julian Seward [Thu, 10 Mar 2005 23:59:00 +0000 (23:59 +0000)]
Merge in changes from the 2.4.0 line. This basically brings in the
overhaul of the thread support. Many things are now probably broken,
but at least with --tool=none, simple and not-so-simple threaded and
non-thread programs work.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3265
Julian Seward [Thu, 10 Mar 2005 23:23:45 +0000 (23:23 +0000)]
Add new files resulting from merging in the 2.4.0 line. Many of these
seem to be simply duplication of the x86 instruction set tests into
the addrcheck and helgrind trees. I'm not sure what this duplication
achieves.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3264
Julian Seward [Thu, 10 Mar 2005 23:13:15 +0000 (23:13 +0000)]
Change license on switchback/test_ppc_jm1.c as per Jocelyn's
instructions.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1020
Nicholas Nethercote [Thu, 10 Mar 2005 22:20:11 +0000 (22:20 +0000)]
Test commit (whitespace-only change).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3263
Julian Seward [Thu, 10 Mar 2005 19:40:41 +0000 (19:40 +0000)]
rm QEMU references; the derivation is now so distant its barely
relevant.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1019
Julian Seward [Thu, 10 Mar 2005 19:33:19 +0000 (19:33 +0000)]
Apparently we're a .net, not merely a .co.uk.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1018
Julian Seward [Thu, 10 Mar 2005 19:09:02 +0000 (19:09 +0000)]
Fix typo
git-svn-id: svn://svn.valgrind.org/vex/trunk@1017
Julian Seward [Thu, 10 Mar 2005 18:55:58 +0000 (18:55 +0000)]
Statement about copyright.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1016
Julian Seward [Thu, 10 Mar 2005 18:55:27 +0000 (18:55 +0000)]
Add a copy of GNU GPL v2.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1015
Julian Seward [Thu, 10 Mar 2005 18:28:08 +0000 (18:28 +0000)]
Clean up for public availability.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1014
Cerion Armour-Brown [Thu, 10 Mar 2005 15:53:11 +0000 (15:53 +0000)]
Added test_ppc to Makefile
git-svn-id: svn://svn.valgrind.org/vex/trunk@1013
Julian Seward [Thu, 10 Mar 2005 15:03:52 +0000 (15:03 +0000)]
Another test commit
git-svn-id: svn://svn.valgrind.org/vex/trunk@1012
Julian Seward [Thu, 10 Mar 2005 13:54:15 +0000 (13:54 +0000)]
A second test commit.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1011
Julian Seward [Thu, 10 Mar 2005 13:28:41 +0000 (13:28 +0000)]
Test commit for new repo.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3262
Julian Seward [Thu, 10 Mar 2005 13:27:14 +0000 (13:27 +0000)]
Remove something old (really, a test commit for the new repo location)
git-svn-id: svn://svn.valgrind.org/vex/trunk@1010
Julian Seward [Wed, 9 Mar 2005 13:13:30 +0000 (13:13 +0000)]
Jocelyn Mayer's fabulous ppc test program.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1009
Julian Seward [Tue, 8 Mar 2005 16:43:27 +0000 (16:43 +0000)]
As part of the build process, generate pub/libvex_guest_offsets.h holding
guest state offsets.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1008
Julian Seward [Tue, 8 Mar 2005 16:34:09 +0000 (16:34 +0000)]
A place to put auxiliary programs used as part of the build process.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1007
Cerion Armour-Brown [Fri, 4 Mar 2005 17:35:29 +0000 (17:35 +0000)]
Cleaned up front end a fair bit.
Consolidated spr (non-gpr/fpr) register interface
Brought together separate guest XER flags to single word
+ fixed up switchback (latter slighly broken since r1002)
Few more comments, vasserts etc.
Updated page refs to PPC32 docs
git-svn-id: svn://svn.valgrind.org/vex/trunk@1006
Cerion Armour-Brown [Fri, 4 Mar 2005 14:20:14 +0000 (14:20 +0000)]
fix cmd call of switchback, and deal with return err 256
git-svn-id: svn://svn.valgrind.org/vex/trunk@1005
Julian Seward [Fri, 4 Mar 2005 13:51:28 +0000 (13:51 +0000)]
A couple more flags-specialisation cases, derived from profiling FP
code.
git-svn-id: svn://svn.valgrind.org/vex/trunk@1004
Julian Seward [Fri, 4 Mar 2005 13:50:53 +0000 (13:50 +0000)]
guest state padding wibble
git-svn-id: svn://svn.valgrind.org/vex/trunk@1003
Cerion Armour-Brown [Thu, 3 Mar 2005 17:36:23 +0000 (17:36 +0000)]
Cleaning up frontend
- inc. changing all guest-state UChars to UInts
git-svn-id: svn://svn.valgrind.org/vex/trunk@1002
Cerion Armour-Brown [Thu, 3 Mar 2005 17:21:51 +0000 (17:21 +0000)]
Cleaned up backend a little
git-svn-id: svn://svn.valgrind.org/vex/trunk@1001
Cerion Armour-Brown [Thu, 3 Mar 2005 13:55:22 +0000 (13:55 +0000)]
Dealt properly with immediates in the backend - reduces emmitted code by ~1/3
git-svn-id: svn://svn.valgrind.org/vex/trunk@1000
Cerion Armour-Brown [Thu, 3 Mar 2005 05:29:17 +0000 (05:29 +0000)]
comments only: guest-state offsets
git-svn-id: svn://svn.valgrind.org/vex/trunk@999
Cerion Armour-Brown [Thu, 3 Mar 2005 05:17:08 +0000 (05:17 +0000)]
Cleaned up isel for instns taking an RI arg
- limiting imms to 15 bits, so don't get inappropriately sign-extended.
git-svn-id: svn://svn.valgrind.org/vex/trunk@998
Cerion Armour-Brown [Thu, 3 Mar 2005 04:49:09 +0000 (04:49 +0000)]
printout stderr msg on abnormal switchback exit
git-svn-id: svn://svn.valgrind.org/vex/trunk@997
Cerion Armour-Brown [Thu, 3 Mar 2005 02:21:22 +0000 (02:21 +0000)]
Fixed sign-extend bug for compares (just putting imm in a reg, for now) - test_bzip works now!
Load small imm's more simply in mk_iMOVds_RRI (move RI to R).
git-svn-id: svn://svn.valgrind.org/vex/trunk@996
Cerion Armour-Brown [Thu, 3 Mar 2005 02:17:06 +0000 (02:17 +0000)]
Simplified sraw a little
git-svn-id: svn://svn.valgrind.org/vex/trunk@995
Julian Seward [Wed, 2 Mar 2005 16:05:13 +0000 (16:05 +0000)]
* toIR.c: Handle a few more insns needed to run simple X applications
(xfontsel, xedit)
* iropt.c: add a folding rule for Xor16.
git-svn-id: svn://svn.valgrind.org/vex/trunk@994
Julian Seward [Wed, 2 Mar 2005 16:01:23 +0000 (16:01 +0000)]
Fix enough syscall stuff so that simple X applications run (xfontsel,
xedit).
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3261
Julian Seward [Wed, 2 Mar 2005 14:22:49 +0000 (14:22 +0000)]
A place to record notes on how to clean up the structure. This is
stuff that I discover as I go along.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3260
Julian Seward [Wed, 2 Mar 2005 14:06:08 +0000 (14:06 +0000)]
Minimal, horrible hacks needed to make vsyscalls work on amd64.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3259
Julian Seward [Wed, 2 Mar 2005 14:04:19 +0000 (14:04 +0000)]
Fix struct ume_auxv so that auxc walking on 64-bit platforms works.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3258
Cerion Armour-Brown [Tue, 1 Mar 2005 20:31:53 +0000 (20:31 +0000)]
Deal with last_bad == given_last_good
Some printout changes
Ignore vex output in output test
git-svn-id: svn://svn.valgrind.org/vex/trunk@993
Cerion Armour-Brown [Tue, 1 Mar 2005 20:27:49 +0000 (20:27 +0000)]
Small backend printout changes only
git-svn-id: svn://svn.valgrind.org/vex/trunk@992
Julian Seward [Tue, 1 Mar 2005 19:00:30 +0000 (19:00 +0000)]
Clean up handling of socket system calls on amd64-linux, so that the
code for them is shared between amd64-linux and x86-linux.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3257
Julian Seward [Tue, 1 Mar 2005 16:45:23 +0000 (16:45 +0000)]
Factor out all the socket-related syscall handlers into their own
functions, so the same handlers can be used on amd64-linux as
x86-linux without tons of code duplications.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3256
Julian Seward [Tue, 1 Mar 2005 10:19:23 +0000 (10:19 +0000)]
Add a constant folding rule for MullS32.
git-svn-id: svn://svn.valgrind.org/vex/trunk@991
Cerion Armour-Brown [Tue, 1 Mar 2005 09:32:01 +0000 (09:32 +0000)]
Front end bug: bad arg order for MuxOX of srw
git-svn-id: svn://svn.valgrind.org/vex/trunk@990
Cerion Armour-Brown [Tue, 1 Mar 2005 09:11:49 +0000 (09:11 +0000)]
Backend bug: mkFormD wasn't smallifying the imm
(plus not-quite-right vassert)
Small change to front-end cmp DIP
git-svn-id: svn://svn.valgrind.org/vex/trunk@989
Julian Seward [Mon, 28 Feb 2005 20:50:29 +0000 (20:50 +0000)]
Fix more RES-is-not-set assertions, and move a couple of comments to
their correct homes.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3255
Cerion Armour-Brown [Mon, 28 Feb 2005 18:48:27 +0000 (18:48 +0000)]
perl script to run a binary search with switchback
git-svn-id: svn://svn.valgrind.org/vex/trunk@988
Julian Seward [Mon, 28 Feb 2005 17:27:04 +0000 (17:27 +0000)]
When handling syscalls, don't try to figure out if the pre-handler set
the syscall result by inspecting RES after the pre-handler has run.
Instead, give each thread a syscall_result_set Bool, and make
SET_RESULT set it. Inspect that Bool.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3254
Cerion Armour-Brown [Mon, 28 Feb 2005 16:43:16 +0000 (16:43 +0000)]
Front-end fix for slw - _record_ the result...
git-svn-id: svn://svn.valgrind.org/vex/trunk@987
Julian Seward [Mon, 28 Feb 2005 14:39:21 +0000 (14:39 +0000)]
Various cleanups to revised low-level memory manager.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3253
Julian Seward [Mon, 28 Feb 2005 14:26:22 +0000 (14:26 +0000)]
Gradually move popular translations towards the start of the
table, so they can be found more quickly on subsequent lookups.
git-svn-id: svn://svn.valgrind.org/vex/trunk@986
Julian Seward [Mon, 28 Feb 2005 12:26:49 +0000 (12:26 +0000)]
Get rid of assertion which, as gcc points out, is useless.
git-svn-id: svn://svn.valgrind.org/vex/trunk@985
Julian Seward [Sun, 27 Feb 2005 13:39:25 +0000 (13:39 +0000)]
Placate Icc in the usual way.
git-svn-id: svn://svn.valgrind.org/vex/trunk@984
Julian Seward [Sun, 27 Feb 2005 13:35:41 +0000 (13:35 +0000)]
A few more 64-bit folding rules.
git-svn-id: svn://svn.valgrind.org/vex/trunk@983
Julian Seward [Sun, 27 Feb 2005 13:31:42 +0000 (13:31 +0000)]
Comment-only change.
git-svn-id: svn://svn.valgrind.org/vex/trunk@982
Julian Seward [Sun, 27 Feb 2005 13:25:31 +0000 (13:25 +0000)]
Oops! The whole point of rev 980 was to get rid of eregOfRM and
gregOfRM. This commit actually does get rid of them :-)
git-svn-id: svn://svn.valgrind.org/vex/trunk@981
Julian Seward [Sun, 27 Feb 2005 13:10:48 +0000 (13:10 +0000)]
A major overhaul of the way integer register decoding is done on
amd64.
The presence of REX bytes -- whilst apparently a simple change --
significantly complicates instruction decoding. The main problem is
that integer register numbers are now split into two pieces, one bit
from the REX byte and three bits from the modrm byte (or wherever).
The tricky bit is to always ensure that the correct pieces are
reassembled to form 4-bit register numbers. Prior to this commit, it
was easy to make that kind of error -- eg, conjoining the REX.B bit
with the 'g' modrm field to produce a nonsense register number. This
commit rearranges the handling functions for integer registers to make
that kind of error much less likely, basically by not allowing you to
deal in fragments of register fields unless absolutely necessary.
git-svn-id: svn://svn.valgrind.org/vex/trunk@980
Julian Seward [Sat, 26 Feb 2005 02:16:39 +0000 (02:16 +0000)]
Icc typechecker police.
git-svn-id: svn://svn.valgrind.org/vex/trunk@979
Julian Seward [Sat, 26 Feb 2005 02:00:50 +0000 (02:00 +0000)]
More icc-related cleanups.
git-svn-id: svn://svn.valgrind.org/vex/trunk@978
Julian Seward [Sat, 26 Feb 2005 01:55:02 +0000 (01:55 +0000)]
Icc typechecker police.
git-svn-id: svn://svn.valgrind.org/vex/trunk@977
Julian Seward [Sat, 26 Feb 2005 01:17:42 +0000 (01:17 +0000)]
Fix some register-field decoding bugs for SSE. Nasty. There has to
be a more foolproof way of doing this.
git-svn-id: svn://svn.valgrind.org/vex/trunk@976
Cerion Armour-Brown [Fri, 25 Feb 2005 20:47:36 +0000 (20:47 +0000)]
Fixed some front end with-zero loads
git-svn-id: svn://svn.valgrind.org/vex/trunk@975
Cerion Armour-Brown [Fri, 25 Feb 2005 18:46:14 +0000 (18:46 +0000)]
Fixed isel::load of small imm to reg - these are UInts: we don't want sign extension.
Fixed frontend addi DIP
git-svn-id: svn://svn.valgrind.org/vex/trunk@974
Julian Seward [Fri, 25 Feb 2005 18:36:07 +0000 (18:36 +0000)]
Add toUInt.
git-svn-id: svn://svn.valgrind.org/vex/trunk@973
Julian Seward [Fri, 25 Feb 2005 18:31:27 +0000 (18:31 +0000)]
Icc typechecker fixes.
git-svn-id: svn://svn.valgrind.org/vex/trunk@972
Julian Seward [Fri, 25 Feb 2005 17:40:26 +0000 (17:40 +0000)]
Another round of placating icc's typechecker.
git-svn-id: svn://svn.valgrind.org/vex/trunk@971
Cerion Armour-Brown [Fri, 25 Feb 2005 16:43:08 +0000 (16:43 +0000)]
Simplified front-end IR encoding for some subtracts
git-svn-id: svn://svn.valgrind.org/vex/trunk@970
Cerion Armour-Brown [Fri, 25 Feb 2005 16:39:58 +0000 (16:39 +0000)]
Alu32::SUB was broken in the backend.
Moved Alu32::SUB to it's own instruction: Sub32
---
PPC32 only implements subf (= sub from), which takes form
subf(ic) regD, regA, regB|immB => rD = rB|immB - rA
Hence Iop_Sub32 is given an RI as the left arg...
---
git-svn-id: svn://svn.valgrind.org/vex/trunk@969
Julian Seward [Fri, 25 Feb 2005 14:22:12 +0000 (14:22 +0000)]
Even more amd64 floating point bits and pieces.
git-svn-id: svn://svn.valgrind.org/vex/trunk@968
Cerion Armour-Brown [Fri, 25 Feb 2005 13:40:31 +0000 (13:40 +0000)]
Fix flags define & printout last run translation after all...
git-svn-id: svn://svn.valgrind.org/vex/trunk@967
Cerion Armour-Brown [Fri, 25 Feb 2005 13:39:10 +0000 (13:39 +0000)]
Fixes to getReg_field, putReg_field
git-svn-id: svn://svn.valgrind.org/vex/trunk@966
Julian Seward [Fri, 25 Feb 2005 13:03:03 +0000 (13:03 +0000)]
Fill in a bunch more amd64 floating point cases. Some non-trivial
FP programs are beginning to work now.
git-svn-id: svn://svn.valgrind.org/vex/trunk@965
Cerion Armour-Brown [Fri, 25 Feb 2005 12:33:12 +0000 (12:33 +0000)]
Re-arranged switchback::run_simulator a little, so can print translation of current bb (so if test breaks @ N, we can switchback @ N and N gets printed)
git-svn-id: svn://svn.valgrind.org/vex/trunk@964
Cerion Armour-Brown [Fri, 25 Feb 2005 12:08:02 +0000 (12:08 +0000)]
Correction to iselCC::IexTmp
git-svn-id: svn://svn.valgrind.org/vex/trunk@963
Cerion Armour-Brown [Fri, 25 Feb 2005 11:16:58 +0000 (11:16 +0000)]
Added a couple of unhandled isel instrs:
IselStmt::Ist_Tmp::Ity_I1
iselCondCode::Iex_Tmp
git-svn-id: svn://svn.valgrind.org/vex/trunk@962
Cerion Armour-Brown [Fri, 25 Feb 2005 10:23:46 +0000 (10:23 +0000)]
Fix to guest-ppc32 subfic
git-svn-id: svn://svn.valgrind.org/vex/trunk@961
Julian Seward [Fri, 25 Feb 2005 02:48:47 +0000 (02:48 +0000)]
Fill in a huge number of amd64 floating point cases, and start to
reinstate the old x87 instruction decoder.
git-svn-id: svn://svn.valgrind.org/vex/trunk@960
Julian Seward [Fri, 25 Feb 2005 02:45:39 +0000 (02:45 +0000)]
On AMD64 it's valid to access up to 128 bytes below %rsp. Or to be
more accurate, on the amd64-linux ABI that is allowable. Anyway,
parameterise the signal handler so it isn't confused by such accesses.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3252
Cerion Armour-Brown [Thu, 24 Feb 2005 20:01:02 +0000 (20:01 +0000)]
Fixed a backend shift bug: src/dst were swapped in emitted code.
Also fixed an assembly printf for Set32.
git-svn-id: svn://svn.valgrind.org/vex/trunk@959
Cerion Armour-Brown [Thu, 24 Feb 2005 16:59:17 +0000 (16:59 +0000)]
Another go at fixing the rotate mask
git-svn-id: svn://svn.valgrind.org/vex/trunk@958
Cerion Armour-Brown [Thu, 24 Feb 2005 14:57:12 +0000 (14:57 +0000)]
Fixed a rotate bug: IBM bit labelling got me again
git-svn-id: svn://svn.valgrind.org/vex/trunk@957
Cerion Armour-Brown [Thu, 24 Feb 2005 11:19:51 +0000 (11:19 +0000)]
Some simplifying of guest register access in toIR.c
getReg_masked no longer calls getReg_bit for XER
git-svn-id: svn://svn.valgrind.org/vex/trunk@956
Cerion Armour-Brown [Wed, 23 Feb 2005 23:13:29 +0000 (23:13 +0000)]
Added front-end code for conditional register logic instrs
Cleaned up the register access interface a little.
git-svn-id: svn://svn.valgrind.org/vex/trunk@955
Cerion Armour-Brown [Wed, 23 Feb 2005 18:21:31 +0000 (18:21 +0000)]
Just some assembly printout changes
git-svn-id: svn://svn.valgrind.org/vex/trunk@954
Julian Seward [Wed, 23 Feb 2005 13:31:25 +0000 (13:31 +0000)]
Cleaning up the x86 back end: get rid of instruction variants which
the instruction selector will never generate. I guess this
demonstrates that the majority of operations are sufficiently rare
that it is not worth going to much effort to generate good code for
them.
git-svn-id: svn://svn.valgrind.org/vex/trunk@953
Julian Seward [Wed, 23 Feb 2005 13:28:27 +0000 (13:28 +0000)]
Fix wrong comments (comment-only change)
git-svn-id: svn://svn.valgrind.org/vex/trunk@952
Julian Seward [Wed, 23 Feb 2005 11:39:21 +0000 (11:39 +0000)]
Many amd64 FP cases, including conversion to/from int (tedious stuff).
git-svn-id: svn://svn.valgrind.org/vex/trunk@951
Julian Seward [Wed, 23 Feb 2005 11:36:56 +0000 (11:36 +0000)]
Rearrange debug printing a bit.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@3251
Cerion Armour-Brown [Wed, 23 Feb 2005 11:20:53 +0000 (11:20 +0000)]
Fix to run_translation: need to save LR on _caller's_ stack, and leave a hole for a callee to do the same on our stack.
git-svn-id: svn://svn.valgrind.org/vex/trunk@950
Cerion Armour-Brown [Tue, 22 Feb 2005 20:36:49 +0000 (20:36 +0000)]
Added new instruction RdWrLR to read/write link register.
The LR is saved in ISelEnv at the start of every bb
The LR is restored before any Goto.
This is needed because LR is a caller-saved register on PPC32, so helper functions may kill it.
(Could save/restore around each helper call, but not efficient)
git-svn-id: svn://svn.valgrind.org/vex/trunk@949
Cerion Armour-Brown [Tue, 22 Feb 2005 18:39:18 +0000 (18:39 +0000)]
Coupl'a front-end load / save bugs
git-svn-id: svn://svn.valgrind.org/vex/trunk@948
Julian Seward [Tue, 22 Feb 2005 15:12:00 +0000 (15:12 +0000)]
Make the switchbacker work on ppc32.
git-svn-id: svn://svn.valgrind.org/vex/trunk@947
Cerion Armour-Brown [Tue, 22 Feb 2005 11:16:54 +0000 (11:16 +0000)]
Better assembly printouts, and added iselCondCode 1:Bit Const
git-svn-id: svn://svn.valgrind.org/vex/trunk@946
Cerion Armour-Brown [Tue, 22 Feb 2005 11:07:35 +0000 (11:07 +0000)]
Gotcha!
git-svn-id: svn://svn.valgrind.org/vex/trunk@945
Cerion Armour-Brown [Mon, 21 Feb 2005 16:44:03 +0000 (16:44 +0000)]
just turned off some debug printfs
git-svn-id: svn://svn.valgrind.org/vex/trunk@944
Cerion Armour-Brown [Mon, 21 Feb 2005 16:30:45 +0000 (16:30 +0000)]
coupl'a small fixes for ppc32
git-svn-id: svn://svn.valgrind.org/vex/trunk@943
Cerion Armour-Brown [Mon, 21 Feb 2005 15:09:19 +0000 (15:09 +0000)]
Fixes to host_ppc32:
- correct assembly printouts for goto, load
- emit_instrn
- cmp: 7-crfD (f'ing ibm)
- added mkLoadImm(), mkMoveReg()
- call: 'target >> 2'
- call,goto,cmov: fixed conditional jumps
- goto: return correctly
- set32: fix src,dst regs for flag rotate
- isel:
mk_iMOVds_RRI(): ORi, not ANDi
git-svn-id: svn://svn.valgrind.org/vex/trunk@942
Cerion Armour-Brown [Mon, 21 Feb 2005 14:07:48 +0000 (14:07 +0000)]
Corrected some mistakes in guest_ppc32
- getReg(): bad mask
- incorrect instr decode for addi, addic, addic.
- compares: set bad compare flags: 8,4
- andi: 'And', not 'Add' !
- branches: deal properly with negative offsets/addresses
git-svn-id: svn://svn.valgrind.org/vex/trunk@941
Cerion Armour-Brown [Mon, 21 Feb 2005 13:58:38 +0000 (13:58 +0000)]
finished off switchback code for ppc32
git-svn-id: svn://svn.valgrind.org/vex/trunk@940
Julian Seward [Mon, 21 Feb 2005 13:58:26 +0000 (13:58 +0000)]
More amd64 SSE/FP bits and pieces.
git-svn-id: svn://svn.valgrind.org/vex/trunk@939