svn commit: r1165 - in trunk/yasm/modules/arch/x86: . tests

peter at tortall.net peter at tortall.net
Thu Oct 14 00:46:46 PDT 2004


Author: peter
Date: Thu Oct 14 00:46:44 2004
New Revision: 1165

Added:
   trunk/yasm/modules/arch/x86/tests/ea-warn.asm
   trunk/yasm/modules/arch/x86/tests/ea-warn.errwarn
   trunk/yasm/modules/arch/x86/tests/ea-warn.hex
Modified:
   trunk/yasm/modules/arch/x86/tests/Makefile.inc
   trunk/yasm/modules/arch/x86/tests/addrop.errwarn
   trunk/yasm/modules/arch/x86/tests/addrop.hex
   trunk/yasm/modules/arch/x86/x86bc.c
   trunk/yasm/modules/arch/x86/x86expr.c
ViewCVS:
   http://www.tortall.net/cgi-bin/viewcvs.cgi?view=rev&rev=1165
Log:
Make manual size overrides on effective addresses only work if legal;
otherwise the override is ignored and a warning is output, so correct
code is always generated.

Reported by: vclaudepierre at tiscali.fr
Bugzilla Bug: 40

* x86expr.c (x86_checkea_calc_displen): Output warnings for noreg case;
reorder such that displacement length calculation is done if the warning
is output.
* x86bc.c (x86_bc_insn_resolve): If length was forced but checkea had to
override it, save it always (to avoid multiple warnings).

* addrop.hex: Match corrected code generation.
* addrop.errwarn: Include new warning message.

* ea-warn.asm, ea-warn.errwarn, ea-warn.hex: Test new functionality more
in depth (code thanks to bug reporter).




More information about the yasm-cvs mailing list