diff options
author | 2003-07-13 06:30:45 +0000 | |
---|---|---|
committer | 2003-07-13 06:30:45 +0000 | |
commit | 43d687d7c12e320109bdbcc35c1b719e80a2c046 (patch) | |
tree | 0c7edf63fc9015cc80791caba24007ff8c8ac4c0 | |
parent | Install zdiff.1; noted by marc@ (diff) | |
download | wireguard-openbsd-43d687d7c12e320109bdbcc35c1b719e80a2c046.tar.xz wireguard-openbsd-43d687d7c12e320109bdbcc35c1b719e80a2c046.zip |
my loathing for gcc runneth over: another case where a bitfield isn't
decoded properly with the instruction decode stuff.
-rw-r--r-- | sys/arch/sparc64/sparc64/emul.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/sparc64/sparc64/emul.c b/sys/arch/sparc64/sparc64/emul.c index fa4b7ed7bff..9d5f8a8cd4e 100644 --- a/sys/arch/sparc64/sparc64/emul.c +++ b/sys/arch/sparc64/sparc64/emul.c @@ -1,4 +1,4 @@ -/* $OpenBSD: emul.c,v 1.8 2003/07/12 06:27:38 jason Exp $ */ +/* $OpenBSD: emul.c,v 1.9 2003/07/13 06:30:45 jason Exp $ */ /* $NetBSD: emul.c,v 1.8 2001/06/29 23:58:40 eeh Exp $ */ /*- @@ -502,7 +502,7 @@ emul_qf(int32_t insv, struct proc *p, union sigval sv, struct trapframe *tf) asi = ins.i_asi.i_asi; addr = tf->tf_global[ins.i_asi.i_rs1]; - if (ins.i_loadstore.i_i) + if (ins.i_int & 0x2000) addr += SIGN_EXT13(ins.i_simm13.i_simm13); else addr += tf->tf_global[ins.i_asi.i_rs2]; |