summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorBrandon Creighton <bjc@cvs.openbsd.org>2001-04-17 03:17:49 +0000
committerBrandon Creighton <bjc@cvs.openbsd.org>2001-04-17 03:17:49 +0000
commit0c48d6b9748a7e2878a87a69b8da923b826726ac (patch)
tree5b0cae4616353649449e9c3f50290b12d1f3ab3c /sys
parent11e45fbe81b264d1ced97e777a5d25d7a0a74824 (diff)
Switch a "BGTR foo" to a "BLSS bar; BRW foo; bar:". In this case, the
difference between the BGTR and foo: is too large for a byte displacement. as should give an error or at least a warning here, but it doesn't; instead it merrily outputs a completely bogus displacement. This fixes problems with EMODD on numbers with negative exponents.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/vax/vax/unimpl_emul.s6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/arch/vax/vax/unimpl_emul.s b/sys/arch/vax/vax/unimpl_emul.s
index 734e4eb8088..084e2f0cb0a 100644
--- a/sys/arch/vax/vax/unimpl_emul.s
+++ b/sys/arch/vax/vax/unimpl_emul.s
@@ -1,4 +1,4 @@
-/* $OpenBSD: unimpl_emul.s,v 1.4 2001/03/22 11:24:52 bjc Exp $ */
+/* $OpenBSD: unimpl_emul.s,v 1.5 2001/04/17 03:17:48 bjc Exp $ */
/* $NetBSD: unimpl_emul.s,v 1.2 2000/08/14 11:16:52 ragge Exp $ */
/*
@@ -652,7 +652,9 @@ emodd: bsbw touser
* shift them away.
*/
cmpl $0x80, r9
- bgtr 8f /* if we are less than 1.0, we can avoid this */
+ blss 7f /* if we are less than 1.0, we can avoid this */
+ brw 8f
+7:
subl3 $0x80, r9, r8
movq TMPFRACTGT, TMPFRAC1