The information in this article applies to:
SYMPTOMSIn the Microsoft Macro Assembler (MASM) version 6.0, incorrect code is generated for instructions, such as the following, using the operand [eax][eax]: lea edi, [eax][eax] RESOLUTIONA workaround for this problem is to embed the opcode for the instruction directly in the code. The sample code below demonstrates this method. STATUSMicrosoft has confirmed this to be a problem in MASM version 6.0. This problem was corrected in MASM version 6.0a. MORE INFORMATIONA listing file from the following program will show that the instruction lea edi, [eax][eax] is encoded as 8D 3C 3A. However, the code actually placed into the executable is 8D 3C. The correct code in the case of lea edi, [eax][eax] is 8D 3C 00. Note that the operand [eax][eax] is available only when using the .386 or .486 directives. Sample Code
Additional query words: 6.00 buglist6.00 fixlist6.00a
Keywords : |
Last Reviewed: January 5, 2000 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |