mov ebx, [rcx] ; 8B 19
mov r8, [r9] ; 4D 8B 01
mov ecx, [ebx] ; 67 8B 0B
-mov edx, [rip] ; 8B 15
-a32 mov rcx, [rip+5] ; 67 48 8B 4D 05
+mov edx, [rip] ; 8B 15 00 00 00 00
+a32 mov rcx, [rip+5] ; 67 48 8B 0D 05 00 00 00
mov rbx, [rax+rbx*4] ; 48 8B 1C 98
mov rdx, [rsp] ; 48 8B 14 24
mov rax, [r12] ; 49 8B 04 24
mov rcx, [rbp] ; 48 8B 4D 00
mov rbx, [r13] ; 49 8B 5D 00
-mov ah, [rip] ; 8A 25
+mov ah, [rip] ; 8A 25 00 00 00 00
mov bh, [rcx] ; 8A 39
* POSSIBILITY OF SUCH DAMAGE.
*/
#include <util.h>
-/*@unused@*/ RCSID("$IdPath: yasm/modules/arch/x86/x86expr.c,v 1.54 2003/03/26 05:07:55 peter Exp $");
+/*@unused@*/ RCSID("$IdPath$");
#define YASM_LIB_INTERNAL
#define YASM_EXPR_INTERNAL
*sib = 0;
*v_sib = 0;
*n_sib = 0;
+ /* RIP always requires a 32-bit displacement */
+ *v_modrm = 1;
+ *displen = 4;
+ return 1;
} else if (indexreg == REG3264_NONE) {
/* basereg only */
/* Don't need to go to the full effort of determining what type