* Re: frysk-imports frysk/pkglibdir/ChangeLog frysk/ ...
[not found] <20071015180147.24121.qmail@sourceware.org>
@ 2007-10-26 15:12 ` Mark Wielaard
0 siblings, 0 replies; only message in thread
From: Mark Wielaard @ 2007-10-26 15:12 UTC (permalink / raw)
To: frysk
Hi Andrew,
On Mon, 2007-10-15 at 18:01 +0000, cagney@sourceware.org wrote:
> 2007-10-15 Andrew Cagney <cagney@redhat.com>
>
> * RegsCase.java (taskObject(Task)): Delete.
> (access(Register,int,int,byte[],int,boolean)): Relace
> accessRegister(Object,Register,int,int,byte[],int,boolean).
> (Value, ByteValue, BigIntegerValue, MaskedValue, SymbolValue)
> (NoValue): New.
> (Values): Replace ValueMap.
> (IA32): Provide values for EIP and maksed EFLAGS.
> * TestRegs.java: Update.
Being able to use a mask for some of the registers is useful. Thanks.
The EFLAGS mask was off by one because the bit values start at zero. The
following makes the test also pass on my machine (Intel x86 T2400).
2007-10-26 Mark Wielaard <mwielaard@redhat.com>
* RegsCase.java (IA32): Don't subtract one from EFLAGS bit mask.
Cheers,
Mark
diff --git a/frysk-core/frysk/testbed/RegsCase.java b/frysk-core/frysk/testbed/R
index c94613d..2078cff 100644
--- a/frysk-core/frysk/testbed/RegsCase.java
+++ b/frysk-core/frysk/testbed/RegsCase.java
@@ -288,7 +288,7 @@ public abstract class RegsCase extends TestLib {
.put(IA32Registers.EBP, // 0xcbfed73c
new byte[] { 0x3c, (byte)0xd7, (byte)0xfe, (byte)0xcb })
.put(IA32Registers.EFLAGS, 0x10246,
- 1 << (21 - 1) // Mask CPUID
+ 1 << 21 // Mask CPUID
)
.put(IA32Registers.ESP, // 0x93d4a6ed
new byte[] { (byte)0xed, (byte)0xa6, (byte)0xd4, (byte)0x93 })
^ permalink raw reply [flat|nested] only message in thread