summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJose Antonio Ortega Ruiz <jao@gnu.org>2004-06-05 20:35:15 +0000
committerJose Antonio Ortega Ruiz <jao@gnu.org>2004-06-05 20:35:15 +0000
commitacb7ab556a3c72421749a0cfed29ae2f74c5b9f2 (patch)
tree08665ac46d3d892dc468e9921511b18b22e51871
parentbb395848c5dcc2dd2a36eab54126da34cd59d491 (diff)
downloadmdk-acb7ab556a3c72421749a0cfed29ae2f74c5b9f2.tar.gz
mdk-acb7ab556a3c72421749a0cfed29ae2f74c5b9f2.tar.bz2
(lda_handler_): always reverse sign in LDA,
LDXN and LDiN, even if fspec is not zero (Ruslan Batdalov, closes Debian bug #247392).
-rw-r--r--mixlib/xmix_vm.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/mixlib/xmix_vm.c b/mixlib/xmix_vm.c
index 72ccd73..718a9d3 100644
--- a/mixlib/xmix_vm.c
+++ b/mixlib/xmix_vm.c
@@ -1,7 +1,7 @@
/* ---------------------- xmix_vm.c :
* Implementation of the functions declared in xmix_vm.h
* ------------------------------------------------------------------
- * Copyright (C) 2000, 2003 Free Software Foundation, Inc.
+ * Copyright (C) 2000, 2003, 2004 Free Software Foundation, Inc.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -211,8 +211,7 @@ lda_handler_ (mix_vm_t *vm, const mix_ins_t *ins)
g_assert (id >= mix_LDA && id <= mix_LDXN);
val = get_V_ (vm, ins);
- if ( id > mix_LDX && mix_fspec_left (ins->fspec) == 0)
- mix_word_reverse_sign (val);
+ if (id > mix_LDX) mix_word_reverse_sign (val);
if ( (id > mix_LDA && id < mix_LDX) || (id > mix_LDAN && id < mix_LDXN) )
/* Bytes 1-3 of I regs are always null */
val = mix_word_set_field (mix_fspec_new (1,3),MIX_WORD_ZERO,val);