Reported by: Edouard Gomez <ed.gomez@free.fr>
svn path=/trunk/yasm/; revision=1079
numterms = 1;
}
+ /* Compute NOT and NEG on single intnum. */
+ if (numterms == 1 && int_term == 0 &&
+ (e->op == YASM_EXPR_NOT || e->op == YASM_EXPR_NEG))
+ yasm_intnum_calc(e->terms[0].data.intn, e->op, NULL, e->line);
+
/* Change expression to IDENT if possible. */
if (numterms == 1)
e->op = YASM_EXPR_IDENT;
EXTRA_DIST += libyasm/tests/libyasm_test.sh
EXTRA_DIST += libyasm/tests/duplabel-err.asm
EXTRA_DIST += libyasm/tests/duplabel-err.errwarn
+EXTRA_DIST += libyasm/tests/unary.asm
+EXTRA_DIST += libyasm/tests/unary.errwarn
+EXTRA_DIST += libyasm/tests/unary.hex
noinst_PROGRAMS += bitvect_test
noinst_PROGRAMS += floatnum_test
--- /dev/null
+[bits 32]
+mov eax, ~0
+mov eax, ~5
+mov ebx, -0
+mov ebx, -5
--- /dev/null
+b8
+ff
+ff
+ff
+ff
+b8
+fa
+ff
+ff
+ff
+bb
+00
+00
+00
+00
+bb
+fb
+ff
+ff
+ff