]> git.ipfire.org Git - thirdparty/valgrind.git/log
thirdparty/valgrind.git
21 years agoFix PRE wrapper for sys_exit.
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

21 years agoFix broken xml tags.
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

21 years agoThese files are no longer needed. Bye!
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

21 years agoMerge in changes from the 2.4.0 line. This basically brings in the
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

21 years agoAdd new files resulting from merging in the 2.4.0 line. Many of these
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

21 years agoChange license on switchback/test_ppc_jm1.c as per Jocelyn's
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

21 years agoTest commit (whitespace-only change).
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

21 years agorm QEMU references; the derivation is now so distant its barely
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

21 years agoApparently we're a .net, not merely a .co.uk.
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

21 years agoFix typo
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

21 years agoStatement about copyright.
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

21 years agoAdd a copy of GNU GPL v2.
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

21 years agoClean up for public availability.
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

21 years agoAdded test_ppc to Makefile
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

21 years agoAnother test commit
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

21 years agoA second test commit.
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

21 years agoTest commit for new repo.
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

21 years agoRemove something old (really, a test commit for the new repo location)
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

21 years agoJocelyn Mayer's fabulous ppc test program.
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

21 years agoAs part of the build process, generate pub/libvex_guest_offsets.h holding
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

21 years agoA place to put auxiliary programs used as part of the build process.
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

21 years agoCleaned up front end a fair bit.
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

21 years agofix cmd call of switchback, and deal with return err 256
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

21 years agoA couple more flags-specialisation cases, derived from profiling FP
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

21 years agoguest state padding wibble
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

21 years agoCleaning up frontend
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

21 years agoCleaned up backend a little
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

21 years agoDealt properly with immediates in the backend - reduces emmitted code by ~1/3
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

21 years agocomments only: guest-state offsets
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

21 years agoCleaned up isel for instns taking an RI arg
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

21 years agoprintout stderr msg on abnormal switchback exit
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

21 years agoFixed sign-extend bug for compares (just putting imm in a reg, for now) - test_bzip...
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

21 years agoSimplified sraw a little
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

21 years ago* toIR.c: Handle a few more insns needed to run simple X applications
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

21 years agoFix enough syscall stuff so that simple X applications run (xfontsel,
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

21 years agoA place to record notes on how to clean up the structure. This is
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

21 years agoMinimal, horrible hacks needed to make vsyscalls work on amd64.
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

21 years agoFix struct ume_auxv so that auxc walking on 64-bit platforms works.
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

21 years agoDeal with last_bad == given_last_good
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

21 years agoSmall backend printout changes only
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

21 years agoClean up handling of socket system calls on amd64-linux, so that the
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

21 years agoFactor out all the socket-related syscall handlers into their own
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

21 years agoAdd a constant folding rule for MullS32.
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

21 years agoFront end bug: bad arg order for MuxOX of srw
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

21 years agoBackend bug: mkFormD wasn't smallifying the imm
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

21 years agoFix more RES-is-not-set assertions, and move a couple of comments to
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

21 years agoperl script to run a binary search with switchback
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

21 years agoWhen handling syscalls, don't try to figure out if the pre-handler set
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

21 years agoFront-end fix for slw - _record_ the result...
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

21 years agoVarious cleanups to revised low-level memory manager.
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

21 years agoGradually move popular translations towards the start of the
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

21 years agoGet rid of assertion which, as gcc points out, is useless.
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

21 years agoPlacate Icc in the usual way.
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

21 years agoA few more 64-bit folding rules.
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

21 years agoComment-only change.
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

21 years agoOops! The whole point of rev 980 was to get rid of eregOfRM and
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

21 years agoA major overhaul of the way integer register decoding is done on
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

21 years agoIcc typechecker police.
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

21 years agoMore icc-related cleanups.
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

21 years agoIcc typechecker police.
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

21 years agoFix some register-field decoding bugs for SSE. Nasty. There has to
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

21 years agoFixed some front end with-zero loads
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

21 years agoFixed isel::load of small imm to reg - these are UInts: we don't want sign extension.
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

21 years agoAdd toUInt.
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

21 years agoIcc typechecker fixes.
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

21 years agoAnother round of placating icc's typechecker.
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

21 years agoSimplified front-end IR encoding for some subtracts
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

21 years agoAlu32::SUB was broken in the backend.
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

21 years agoEven more amd64 floating point bits and pieces.
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

21 years agoFix flags define & printout last run translation after all...
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

21 years agoFixes to getReg_field, putReg_field
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

21 years agoFill in a bunch more amd64 floating point cases. Some non-trivial
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

21 years agoRe-arranged switchback::run_simulator a little, so can print translation of current...
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

21 years agoCorrection to iselCC::IexTmp
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

21 years agoAdded a couple of unhandled isel instrs:
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

21 years agoFix to guest-ppc32 subfic
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

21 years agoFill in a huge number of amd64 floating point cases, and start to
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

21 years agoOn AMD64 it's valid to access up to 128 bytes below %rsp. Or to be
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

21 years agoFixed a backend shift bug: src/dst were swapped in emitted code.
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

21 years agoAnother go at fixing the rotate mask
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

21 years agoFixed a rotate bug: IBM bit labelling got me again
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

21 years agoSome simplifying of guest register access in toIR.c
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

21 years agoAdded front-end code for conditional register logic instrs
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

21 years agoJust some assembly printout changes
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

21 years agoCleaning up the x86 back end: get rid of instruction variants which
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

21 years agoFix wrong comments (comment-only change)
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

21 years agoMany amd64 FP cases, including conversion to/from int (tedious stuff).
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

21 years agoRearrange debug printing a bit.
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

21 years agoFix to run_translation: need to save LR on _caller's_ stack, and leave a hole for...
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

21 years agoAdded new instruction RdWrLR to read/write link register.
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

21 years agoCoupl'a front-end load / save bugs
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

21 years agoMake the switchbacker work on ppc32.
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

21 years agoBetter assembly printouts, and added iselCondCode 1:Bit Const
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

21 years agoGotcha!
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

21 years agojust turned off some debug printfs
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

21 years agocoupl'a small fixes for ppc32
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

21 years agoFixes to host_ppc32:
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

21 years agoCorrected some mistakes in guest_ppc32
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

21 years agofinished off switchback code for ppc32
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

21 years agoMore amd64 SSE/FP bits and pieces.
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