summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-10-16 13:01:43 -0700
committerH. Peter Anvin <hpa@zytor.com>2008-10-16 13:01:43 -0700
commit779ed8bcfd4631604aadbff625e8d148a1566091 (patch)
tree6e8c1495fbd17a9b67083dd174c4dd8e858b03a8
parent44d3552ab950e533bcee7626c99d8a9ab0faabd1 (diff)
downloadnasm-779ed8bcfd4631604aadbff625e8d148a1566091.tar.gz
nasm-779ed8bcfd4631604aadbff625e8d148a1566091.tar.bz2
nasm-779ed8bcfd4631604aadbff625e8d148a1566091.zip
BR 2172659: Fix incorrect output value for byte operands
A typo in checkin c1377e9a98dd5ca6f7900c048df5d346d1733d05 caused a bunch of signed-byte immediates to incorrectly be issued as zero. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r--assemble.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/assemble.c b/assemble.c
index 0550d95..aade9d4 100644
--- a/assemble.c
+++ b/assemble.c
@@ -1534,11 +1534,11 @@ static void gencode(int32_t segment, int64_t offset, int bits,
"signed byte value exceeds bounds");
}
if (opx->segment != NO_SEG) {
- data = um;
+ data = uv;
out(offset, segment, &data, OUT_ADDRESS, 1,
opx->segment, opx->wrt);
} else {
- bytes[0] = um;
+ bytes[0] = uv;
out(offset, segment, bytes, OUT_RAWDATA, 1, NO_SEG,
NO_SEG);
}