diff --git a/assemble.c b/assemble.c index 4d56a650..6adaec6a 100644 --- a/assemble.c +++ b/assemble.c @@ -1601,10 +1601,9 @@ static void gencode(int32_t segment, int32_t offset, int bits, case 2: case 4: data = ins->oprs[(c >> 3) & 7].offset; - if (ea_data.rip && (ins->oprs[(c >> 3) & 7].segment == 0xFFFFFFFF)) - ea_data.rip = 0; /* Make distinction between Symbols and Immediates */ - out(offset, segment, &data, /* RIP = Relative, not Absolute */ - (ea_data.rip ? OUT_REL4ADR : OUT_ADDRESS) + ea_data.bytes, + out(offset, segment, &data, + (ea_data.rip ? OUT_REL4ADR : OUT_ADDRESS) + + ea_data.bytes, ins->oprs[(c >> 3) & 7].segment, ins->oprs[(c >> 3) & 7].wrt); s += ea_data.bytes; diff --git a/test/riprel.asm b/test/riprel.asm index c9e9121b..664b76f7 100644 --- a/test/riprel.asm +++ b/test/riprel.asm @@ -299,6 +299,600 @@ mov rax,[rel qword 0xffffffffcccccccc] mov rbx,[rel qword 0xffffffffcccccccc] + mov al,[fs:foo] + mov bl,[fs:foo] + mov ax,[fs:foo] + mov bx,[fs:foo] + mov eax,[fs:foo] + mov ebx,[fs:foo] + mov rax,[fs:foo] + mov rbx,[fs:foo] + mov al,[fs:0xaaaaaaaaaaaaaaaa] + mov bl,[fs:0xaaaaaaaaaaaaaaaa] + mov ax,[fs:0xaaaaaaaaaaaaaaaa] + mov bx,[fs:0xaaaaaaaaaaaaaaaa] + mov eax,[fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[fs:0xaaaaaaaaaaaaaaaa] + mov rax,[fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[fs:0xaaaaaaaaaaaaaaaa] + mov al,[fs:0xbbbbbbbb] + mov bl,[fs:0xbbbbbbbb] + mov ax,[fs:0xbbbbbbbb] + mov bx,[fs:0xbbbbbbbb] + mov eax,[fs:0xbbbbbbbb] + mov ebx,[fs:0xbbbbbbbb] + mov rax,[fs:0xbbbbbbbb] + mov rbx,[fs:0xbbbbbbbb] + mov al,[fs:0xffffffffcccccccc] + mov bl,[fs:0xffffffffcccccccc] + mov ax,[fs:0xffffffffcccccccc] + mov bx,[fs:0xffffffffcccccccc] + mov eax,[fs:0xffffffffcccccccc] + mov ebx,[fs:0xffffffffcccccccc] + mov rax,[fs:0xffffffffcccccccc] + mov rbx,[fs:0xffffffffcccccccc] + + mov al,[dword fs:foo] + mov bl,[dword fs:foo] + mov ax,[dword fs:foo] + mov bx,[dword fs:foo] + mov eax,[dword fs:foo] + mov ebx,[dword fs:foo] + mov rax,[dword fs:foo] + mov rbx,[dword fs:foo] + mov al,[dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[dword fs:0xbbbbbbbb] + mov bl,[dword fs:0xbbbbbbbb] + mov ax,[dword fs:0xbbbbbbbb] + mov bx,[dword fs:0xbbbbbbbb] + mov eax,[dword fs:0xbbbbbbbb] + mov ebx,[dword fs:0xbbbbbbbb] + mov rax,[dword fs:0xbbbbbbbb] + mov rbx,[dword fs:0xbbbbbbbb] + mov al,[dword fs:0xffffffffcccccccc] + mov bl,[dword fs:0xffffffffcccccccc] + mov ax,[dword fs:0xffffffffcccccccc] + mov bx,[dword fs:0xffffffffcccccccc] + mov eax,[dword fs:0xffffffffcccccccc] + mov ebx,[dword fs:0xffffffffcccccccc] + mov rax,[dword fs:0xffffffffcccccccc] + mov rbx,[dword fs:0xffffffffcccccccc] + + mov al,[qword fs:foo] + mov bl,[qword fs:foo] + mov ax,[qword fs:foo] + mov bx,[qword fs:foo] + mov eax,[qword fs:foo] + mov ebx,[qword fs:foo] + mov rax,[qword fs:foo] + mov rbx,[qword fs:foo] + mov al,[qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[qword fs:0xbbbbbbbb] + mov bl,[qword fs:0xbbbbbbbb] + mov ax,[qword fs:0xbbbbbbbb] + mov bx,[qword fs:0xbbbbbbbb] + mov eax,[qword fs:0xbbbbbbbb] + mov ebx,[qword fs:0xbbbbbbbb] + mov rax,[qword fs:0xbbbbbbbb] + mov rbx,[qword fs:0xbbbbbbbb] + mov al,[qword fs:0xffffffffcccccccc] + mov bl,[qword fs:0xffffffffcccccccc] + mov ax,[qword fs:0xffffffffcccccccc] + mov bx,[qword fs:0xffffffffcccccccc] + mov eax,[qword fs:0xffffffffcccccccc] + mov ebx,[qword fs:0xffffffffcccccccc] + mov rax,[qword fs:0xffffffffcccccccc] + mov rbx,[qword fs:0xffffffffcccccccc] + + mov al,[abs fs:foo] + mov bl,[abs fs:foo] + mov ax,[abs fs:foo] + mov bx,[abs fs:foo] + mov eax,[abs fs:foo] + mov ebx,[abs fs:foo] + mov rax,[abs fs:foo] + mov rbx,[abs fs:foo] + mov al,[abs fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs fs:0xbbbbbbbb] + mov bl,[abs fs:0xbbbbbbbb] + mov ax,[abs fs:0xbbbbbbbb] + mov bx,[abs fs:0xbbbbbbbb] + mov eax,[abs fs:0xbbbbbbbb] + mov ebx,[abs fs:0xbbbbbbbb] + mov rax,[abs fs:0xbbbbbbbb] + mov rbx,[abs fs:0xbbbbbbbb] + mov al,[abs fs:0xffffffffcccccccc] + mov bl,[abs fs:0xffffffffcccccccc] + mov ax,[abs fs:0xffffffffcccccccc] + mov bx,[abs fs:0xffffffffcccccccc] + mov eax,[abs fs:0xffffffffcccccccc] + mov ebx,[abs fs:0xffffffffcccccccc] + mov rax,[abs fs:0xffffffffcccccccc] + mov rbx,[abs fs:0xffffffffcccccccc] + + mov al,[abs dword fs:foo] + mov bl,[abs dword fs:foo] + mov ax,[abs dword fs:foo] + mov bx,[abs dword fs:foo] + mov eax,[abs dword fs:foo] + mov ebx,[abs dword fs:foo] + mov rax,[abs dword fs:foo] + mov rbx,[abs dword fs:foo] + mov al,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs dword fs:0xbbbbbbbb] + mov bl,[abs dword fs:0xbbbbbbbb] + mov ax,[abs dword fs:0xbbbbbbbb] + mov bx,[abs dword fs:0xbbbbbbbb] + mov eax,[abs dword fs:0xbbbbbbbb] + mov ebx,[abs dword fs:0xbbbbbbbb] + mov rax,[abs dword fs:0xbbbbbbbb] + mov rbx,[abs dword fs:0xbbbbbbbb] + mov al,[abs dword fs:0xffffffffcccccccc] + mov bl,[abs dword fs:0xffffffffcccccccc] + mov ax,[abs dword fs:0xffffffffcccccccc] + mov bx,[abs dword fs:0xffffffffcccccccc] + mov eax,[abs dword fs:0xffffffffcccccccc] + mov ebx,[abs dword fs:0xffffffffcccccccc] + mov rax,[abs dword fs:0xffffffffcccccccc] + mov rbx,[abs dword fs:0xffffffffcccccccc] + + mov al,[abs qword fs:foo] + mov bl,[abs qword fs:foo] + mov ax,[abs qword fs:foo] + mov bx,[abs qword fs:foo] + mov eax,[abs qword fs:foo] + mov ebx,[abs qword fs:foo] + mov rax,[abs qword fs:foo] + mov rbx,[abs qword fs:foo] + mov al,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs qword fs:0xbbbbbbbb] + mov bl,[abs qword fs:0xbbbbbbbb] + mov ax,[abs qword fs:0xbbbbbbbb] + mov bx,[abs qword fs:0xbbbbbbbb] + mov eax,[abs qword fs:0xbbbbbbbb] + mov ebx,[abs qword fs:0xbbbbbbbb] + mov rax,[abs qword fs:0xbbbbbbbb] + mov rbx,[abs qword fs:0xbbbbbbbb] + mov al,[abs qword fs:0xffffffffcccccccc] + mov bl,[abs qword fs:0xffffffffcccccccc] + mov ax,[abs qword fs:0xffffffffcccccccc] + mov bx,[abs qword fs:0xffffffffcccccccc] + mov eax,[abs qword fs:0xffffffffcccccccc] + mov ebx,[abs qword fs:0xffffffffcccccccc] + mov rax,[abs qword fs:0xffffffffcccccccc] + mov rbx,[abs qword fs:0xffffffffcccccccc] + + mov al,[rel fs:foo] + mov bl,[rel fs:foo] + mov ax,[rel fs:foo] + mov bx,[rel fs:foo] + mov eax,[rel fs:foo] + mov ebx,[rel fs:foo] + mov rax,[rel fs:foo] + mov rbx,[rel fs:foo] + mov al,[rel fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel fs:0xbbbbbbbb] + mov bl,[rel fs:0xbbbbbbbb] + mov ax,[rel fs:0xbbbbbbbb] + mov bx,[rel fs:0xbbbbbbbb] + mov eax,[rel fs:0xbbbbbbbb] + mov ebx,[rel fs:0xbbbbbbbb] + mov rax,[rel fs:0xbbbbbbbb] + mov rbx,[rel fs:0xbbbbbbbb] + mov al,[rel fs:0xffffffffcccccccc] + mov bl,[rel fs:0xffffffffcccccccc] + mov ax,[rel fs:0xffffffffcccccccc] + mov bx,[rel fs:0xffffffffcccccccc] + mov eax,[rel fs:0xffffffffcccccccc] + mov ebx,[rel fs:0xffffffffcccccccc] + mov rax,[rel fs:0xffffffffcccccccc] + mov rbx,[rel fs:0xffffffffcccccccc] + + mov al,[rel dword fs:foo] + mov bl,[rel dword fs:foo] + mov ax,[rel dword fs:foo] + mov bx,[rel dword fs:foo] + mov eax,[rel dword fs:foo] + mov ebx,[rel dword fs:foo] + mov rax,[rel dword fs:foo] + mov rbx,[rel dword fs:foo] + mov al,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel dword fs:0xbbbbbbbb] + mov bl,[rel dword fs:0xbbbbbbbb] + mov ax,[rel dword fs:0xbbbbbbbb] + mov bx,[rel dword fs:0xbbbbbbbb] + mov eax,[rel dword fs:0xbbbbbbbb] + mov ebx,[rel dword fs:0xbbbbbbbb] + mov rax,[rel dword fs:0xbbbbbbbb] + mov rbx,[rel dword fs:0xbbbbbbbb] + mov al,[rel dword fs:0xffffffffcccccccc] + mov bl,[rel dword fs:0xffffffffcccccccc] + mov ax,[rel dword fs:0xffffffffcccccccc] + mov bx,[rel dword fs:0xffffffffcccccccc] + mov eax,[rel dword fs:0xffffffffcccccccc] + mov ebx,[rel dword fs:0xffffffffcccccccc] + mov rax,[rel dword fs:0xffffffffcccccccc] + mov rbx,[rel dword fs:0xffffffffcccccccc] + + mov al,[rel qword fs:foo] + mov bl,[rel qword fs:foo] + mov ax,[rel qword fs:foo] + mov bx,[rel qword fs:foo] + mov eax,[rel qword fs:foo] + mov ebx,[rel qword fs:foo] + mov rax,[rel qword fs:foo] + mov rbx,[rel qword fs:foo] + mov al,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel qword fs:0xbbbbbbbb] + mov bl,[rel qword fs:0xbbbbbbbb] + mov ax,[rel qword fs:0xbbbbbbbb] + mov bx,[rel qword fs:0xbbbbbbbb] + mov eax,[rel qword fs:0xbbbbbbbb] + mov ebx,[rel qword fs:0xbbbbbbbb] + mov rax,[rel qword fs:0xbbbbbbbb] + mov rbx,[rel qword fs:0xbbbbbbbb] + mov al,[rel qword fs:0xffffffffcccccccc] + mov bl,[rel qword fs:0xffffffffcccccccc] + mov ax,[rel qword fs:0xffffffffcccccccc] + mov bx,[rel qword fs:0xffffffffcccccccc] + mov eax,[rel qword fs:0xffffffffcccccccc] + mov ebx,[rel qword fs:0xffffffffcccccccc] + mov rax,[rel qword fs:0xffffffffcccccccc] + mov rbx,[rel qword fs:0xffffffffcccccccc] + + mov al,[es:foo] + mov bl,[es:foo] + mov ax,[es:foo] + mov bx,[es:foo] + mov eax,[es:foo] + mov ebx,[es:foo] + mov rax,[es:foo] + mov rbx,[es:foo] + mov al,[es:0xaaaaaaaaaaaaaaaa] + mov bl,[es:0xaaaaaaaaaaaaaaaa] + mov ax,[es:0xaaaaaaaaaaaaaaaa] + mov bx,[es:0xaaaaaaaaaaaaaaaa] + mov eax,[es:0xaaaaaaaaaaaaaaaa] + mov ebx,[es:0xaaaaaaaaaaaaaaaa] + mov rax,[es:0xaaaaaaaaaaaaaaaa] + mov rbx,[es:0xaaaaaaaaaaaaaaaa] + mov al,[es:0xbbbbbbbb] + mov bl,[es:0xbbbbbbbb] + mov ax,[es:0xbbbbbbbb] + mov bx,[es:0xbbbbbbbb] + mov eax,[es:0xbbbbbbbb] + mov ebx,[es:0xbbbbbbbb] + mov rax,[es:0xbbbbbbbb] + mov rbx,[es:0xbbbbbbbb] + mov al,[es:0xffffffffcccccccc] + mov bl,[es:0xffffffffcccccccc] + mov ax,[es:0xffffffffcccccccc] + mov bx,[es:0xffffffffcccccccc] + mov eax,[es:0xffffffffcccccccc] + mov ebx,[es:0xffffffffcccccccc] + mov rax,[es:0xffffffffcccccccc] + mov rbx,[es:0xffffffffcccccccc] + + mov al,[dword es:foo] + mov bl,[dword es:foo] + mov ax,[dword es:foo] + mov bx,[dword es:foo] + mov eax,[dword es:foo] + mov ebx,[dword es:foo] + mov rax,[dword es:foo] + mov rbx,[dword es:foo] + mov al,[dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[dword es:0xaaaaaaaaaaaaaaaa] + mov al,[dword es:0xbbbbbbbb] + mov bl,[dword es:0xbbbbbbbb] + mov ax,[dword es:0xbbbbbbbb] + mov bx,[dword es:0xbbbbbbbb] + mov eax,[dword es:0xbbbbbbbb] + mov ebx,[dword es:0xbbbbbbbb] + mov rax,[dword es:0xbbbbbbbb] + mov rbx,[dword es:0xbbbbbbbb] + mov al,[dword es:0xffffffffcccccccc] + mov bl,[dword es:0xffffffffcccccccc] + mov ax,[dword es:0xffffffffcccccccc] + mov bx,[dword es:0xffffffffcccccccc] + mov eax,[dword es:0xffffffffcccccccc] + mov ebx,[dword es:0xffffffffcccccccc] + mov rax,[dword es:0xffffffffcccccccc] + mov rbx,[dword es:0xffffffffcccccccc] + + mov al,[qword es:foo] + mov bl,[qword es:foo] + mov ax,[qword es:foo] + mov bx,[qword es:foo] + mov eax,[qword es:foo] + mov ebx,[qword es:foo] + mov rax,[qword es:foo] + mov rbx,[qword es:foo] + mov al,[qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[qword es:0xaaaaaaaaaaaaaaaa] + mov al,[qword es:0xbbbbbbbb] + mov bl,[qword es:0xbbbbbbbb] + mov ax,[qword es:0xbbbbbbbb] + mov bx,[qword es:0xbbbbbbbb] + mov eax,[qword es:0xbbbbbbbb] + mov ebx,[qword es:0xbbbbbbbb] + mov rax,[qword es:0xbbbbbbbb] + mov rbx,[qword es:0xbbbbbbbb] + mov al,[qword es:0xffffffffcccccccc] + mov bl,[qword es:0xffffffffcccccccc] + mov ax,[qword es:0xffffffffcccccccc] + mov bx,[qword es:0xffffffffcccccccc] + mov eax,[qword es:0xffffffffcccccccc] + mov ebx,[qword es:0xffffffffcccccccc] + mov rax,[qword es:0xffffffffcccccccc] + mov rbx,[qword es:0xffffffffcccccccc] + + mov al,[abs es:foo] + mov bl,[abs es:foo] + mov ax,[abs es:foo] + mov bx,[abs es:foo] + mov eax,[abs es:foo] + mov ebx,[abs es:foo] + mov rax,[abs es:foo] + mov rbx,[abs es:foo] + mov al,[abs es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs es:0xaaaaaaaaaaaaaaaa] + mov al,[abs es:0xbbbbbbbb] + mov bl,[abs es:0xbbbbbbbb] + mov ax,[abs es:0xbbbbbbbb] + mov bx,[abs es:0xbbbbbbbb] + mov eax,[abs es:0xbbbbbbbb] + mov ebx,[abs es:0xbbbbbbbb] + mov rax,[abs es:0xbbbbbbbb] + mov rbx,[abs es:0xbbbbbbbb] + mov al,[abs es:0xffffffffcccccccc] + mov bl,[abs es:0xffffffffcccccccc] + mov ax,[abs es:0xffffffffcccccccc] + mov bx,[abs es:0xffffffffcccccccc] + mov eax,[abs es:0xffffffffcccccccc] + mov ebx,[abs es:0xffffffffcccccccc] + mov rax,[abs es:0xffffffffcccccccc] + mov rbx,[abs es:0xffffffffcccccccc] + + mov al,[abs dword es:foo] + mov bl,[abs dword es:foo] + mov ax,[abs dword es:foo] + mov bx,[abs dword es:foo] + mov eax,[abs dword es:foo] + mov ebx,[abs dword es:foo] + mov rax,[abs dword es:foo] + mov rbx,[abs dword es:foo] + mov al,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov al,[abs dword es:0xbbbbbbbb] + mov bl,[abs dword es:0xbbbbbbbb] + mov ax,[abs dword es:0xbbbbbbbb] + mov bx,[abs dword es:0xbbbbbbbb] + mov eax,[abs dword es:0xbbbbbbbb] + mov ebx,[abs dword es:0xbbbbbbbb] + mov rax,[abs dword es:0xbbbbbbbb] + mov rbx,[abs dword es:0xbbbbbbbb] + mov al,[abs dword es:0xffffffffcccccccc] + mov bl,[abs dword es:0xffffffffcccccccc] + mov ax,[abs dword es:0xffffffffcccccccc] + mov bx,[abs dword es:0xffffffffcccccccc] + mov eax,[abs dword es:0xffffffffcccccccc] + mov ebx,[abs dword es:0xffffffffcccccccc] + mov rax,[abs dword es:0xffffffffcccccccc] + mov rbx,[abs dword es:0xffffffffcccccccc] + + mov al,[abs qword es:foo] + mov bl,[abs qword es:foo] + mov ax,[abs qword es:foo] + mov bx,[abs qword es:foo] + mov eax,[abs qword es:foo] + mov ebx,[abs qword es:foo] + mov rax,[abs qword es:foo] + mov rbx,[abs qword es:foo] + mov al,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov al,[abs qword es:0xbbbbbbbb] + mov bl,[abs qword es:0xbbbbbbbb] + mov ax,[abs qword es:0xbbbbbbbb] + mov bx,[abs qword es:0xbbbbbbbb] + mov eax,[abs qword es:0xbbbbbbbb] + mov ebx,[abs qword es:0xbbbbbbbb] + mov rax,[abs qword es:0xbbbbbbbb] + mov rbx,[abs qword es:0xbbbbbbbb] + mov al,[abs qword es:0xffffffffcccccccc] + mov bl,[abs qword es:0xffffffffcccccccc] + mov ax,[abs qword es:0xffffffffcccccccc] + mov bx,[abs qword es:0xffffffffcccccccc] + mov eax,[abs qword es:0xffffffffcccccccc] + mov ebx,[abs qword es:0xffffffffcccccccc] + mov rax,[abs qword es:0xffffffffcccccccc] + mov rbx,[abs qword es:0xffffffffcccccccc] + + mov al,[rel es:foo] + mov bl,[rel es:foo] + mov ax,[rel es:foo] + mov bx,[rel es:foo] + mov eax,[rel es:foo] + mov ebx,[rel es:foo] + mov rax,[rel es:foo] + mov rbx,[rel es:foo] + mov al,[rel es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel es:0xaaaaaaaaaaaaaaaa] + mov al,[rel es:0xbbbbbbbb] + mov bl,[rel es:0xbbbbbbbb] + mov ax,[rel es:0xbbbbbbbb] + mov bx,[rel es:0xbbbbbbbb] + mov eax,[rel es:0xbbbbbbbb] + mov ebx,[rel es:0xbbbbbbbb] + mov rax,[rel es:0xbbbbbbbb] + mov rbx,[rel es:0xbbbbbbbb] + mov al,[rel es:0xffffffffcccccccc] + mov bl,[rel es:0xffffffffcccccccc] + mov ax,[rel es:0xffffffffcccccccc] + mov bx,[rel es:0xffffffffcccccccc] + mov eax,[rel es:0xffffffffcccccccc] + mov ebx,[rel es:0xffffffffcccccccc] + mov rax,[rel es:0xffffffffcccccccc] + mov rbx,[rel es:0xffffffffcccccccc] + + mov al,[rel dword es:foo] + mov bl,[rel dword es:foo] + mov ax,[rel dword es:foo] + mov bx,[rel dword es:foo] + mov eax,[rel dword es:foo] + mov ebx,[rel dword es:foo] + mov rax,[rel dword es:foo] + mov rbx,[rel dword es:foo] + mov al,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov al,[rel dword es:0xbbbbbbbb] + mov bl,[rel dword es:0xbbbbbbbb] + mov ax,[rel dword es:0xbbbbbbbb] + mov bx,[rel dword es:0xbbbbbbbb] + mov eax,[rel dword es:0xbbbbbbbb] + mov ebx,[rel dword es:0xbbbbbbbb] + mov rax,[rel dword es:0xbbbbbbbb] + mov rbx,[rel dword es:0xbbbbbbbb] + mov al,[rel dword es:0xffffffffcccccccc] + mov bl,[rel dword es:0xffffffffcccccccc] + mov ax,[rel dword es:0xffffffffcccccccc] + mov bx,[rel dword es:0xffffffffcccccccc] + mov eax,[rel dword es:0xffffffffcccccccc] + mov ebx,[rel dword es:0xffffffffcccccccc] + mov rax,[rel dword es:0xffffffffcccccccc] + mov rbx,[rel dword es:0xffffffffcccccccc] + + mov al,[rel qword es:foo] + mov bl,[rel qword es:foo] + mov ax,[rel qword es:foo] + mov bx,[rel qword es:foo] + mov eax,[rel qword es:foo] + mov ebx,[rel qword es:foo] + mov rax,[rel qword es:foo] + mov rbx,[rel qword es:foo] + mov al,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov al,[rel qword es:0xbbbbbbbb] + mov bl,[rel qword es:0xbbbbbbbb] + mov ax,[rel qword es:0xbbbbbbbb] + mov bx,[rel qword es:0xbbbbbbbb] + mov eax,[rel qword es:0xbbbbbbbb] + mov ebx,[rel qword es:0xbbbbbbbb] + mov rax,[rel qword es:0xbbbbbbbb] + mov rbx,[rel qword es:0xbbbbbbbb] + mov al,[rel qword es:0xffffffffcccccccc] + mov bl,[rel qword es:0xffffffffcccccccc] + mov ax,[rel qword es:0xffffffffcccccccc] + mov bx,[rel qword es:0xffffffffcccccccc] + mov eax,[rel qword es:0xffffffffcccccccc] + mov ebx,[rel qword es:0xffffffffcccccccc] + mov rax,[rel qword es:0xffffffffcccccccc] + mov rbx,[rel qword es:0xffffffffcccccccc] + default rel @@ -599,5 +1193,599 @@ mov rax,[rel qword 0xffffffffcccccccc] mov rbx,[rel qword 0xffffffffcccccccc] + mov al,[fs:foo] + mov bl,[fs:foo] + mov ax,[fs:foo] + mov bx,[fs:foo] + mov eax,[fs:foo] + mov ebx,[fs:foo] + mov rax,[fs:foo] + mov rbx,[fs:foo] + mov al,[fs:0xaaaaaaaaaaaaaaaa] + mov bl,[fs:0xaaaaaaaaaaaaaaaa] + mov ax,[fs:0xaaaaaaaaaaaaaaaa] + mov bx,[fs:0xaaaaaaaaaaaaaaaa] + mov eax,[fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[fs:0xaaaaaaaaaaaaaaaa] + mov rax,[fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[fs:0xaaaaaaaaaaaaaaaa] + mov al,[fs:0xbbbbbbbb] + mov bl,[fs:0xbbbbbbbb] + mov ax,[fs:0xbbbbbbbb] + mov bx,[fs:0xbbbbbbbb] + mov eax,[fs:0xbbbbbbbb] + mov ebx,[fs:0xbbbbbbbb] + mov rax,[fs:0xbbbbbbbb] + mov rbx,[fs:0xbbbbbbbb] + mov al,[fs:0xffffffffcccccccc] + mov bl,[fs:0xffffffffcccccccc] + mov ax,[fs:0xffffffffcccccccc] + mov bx,[fs:0xffffffffcccccccc] + mov eax,[fs:0xffffffffcccccccc] + mov ebx,[fs:0xffffffffcccccccc] + mov rax,[fs:0xffffffffcccccccc] + mov rbx,[fs:0xffffffffcccccccc] + + mov al,[dword fs:foo] + mov bl,[dword fs:foo] + mov ax,[dword fs:foo] + mov bx,[dword fs:foo] + mov eax,[dword fs:foo] + mov ebx,[dword fs:foo] + mov rax,[dword fs:foo] + mov rbx,[dword fs:foo] + mov al,[dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[dword fs:0xbbbbbbbb] + mov bl,[dword fs:0xbbbbbbbb] + mov ax,[dword fs:0xbbbbbbbb] + mov bx,[dword fs:0xbbbbbbbb] + mov eax,[dword fs:0xbbbbbbbb] + mov ebx,[dword fs:0xbbbbbbbb] + mov rax,[dword fs:0xbbbbbbbb] + mov rbx,[dword fs:0xbbbbbbbb] + mov al,[dword fs:0xffffffffcccccccc] + mov bl,[dword fs:0xffffffffcccccccc] + mov ax,[dword fs:0xffffffffcccccccc] + mov bx,[dword fs:0xffffffffcccccccc] + mov eax,[dword fs:0xffffffffcccccccc] + mov ebx,[dword fs:0xffffffffcccccccc] + mov rax,[dword fs:0xffffffffcccccccc] + mov rbx,[dword fs:0xffffffffcccccccc] + + mov al,[qword fs:foo] + mov bl,[qword fs:foo] + mov ax,[qword fs:foo] + mov bx,[qword fs:foo] + mov eax,[qword fs:foo] + mov ebx,[qword fs:foo] + mov rax,[qword fs:foo] + mov rbx,[qword fs:foo] + mov al,[qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[qword fs:0xbbbbbbbb] + mov bl,[qword fs:0xbbbbbbbb] + mov ax,[qword fs:0xbbbbbbbb] + mov bx,[qword fs:0xbbbbbbbb] + mov eax,[qword fs:0xbbbbbbbb] + mov ebx,[qword fs:0xbbbbbbbb] + mov rax,[qword fs:0xbbbbbbbb] + mov rbx,[qword fs:0xbbbbbbbb] + mov al,[qword fs:0xffffffffcccccccc] + mov bl,[qword fs:0xffffffffcccccccc] + mov ax,[qword fs:0xffffffffcccccccc] + mov bx,[qword fs:0xffffffffcccccccc] + mov eax,[qword fs:0xffffffffcccccccc] + mov ebx,[qword fs:0xffffffffcccccccc] + mov rax,[qword fs:0xffffffffcccccccc] + mov rbx,[qword fs:0xffffffffcccccccc] + + mov al,[abs fs:foo] + mov bl,[abs fs:foo] + mov ax,[abs fs:foo] + mov bx,[abs fs:foo] + mov eax,[abs fs:foo] + mov ebx,[abs fs:foo] + mov rax,[abs fs:foo] + mov rbx,[abs fs:foo] + mov al,[abs fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs fs:0xbbbbbbbb] + mov bl,[abs fs:0xbbbbbbbb] + mov ax,[abs fs:0xbbbbbbbb] + mov bx,[abs fs:0xbbbbbbbb] + mov eax,[abs fs:0xbbbbbbbb] + mov ebx,[abs fs:0xbbbbbbbb] + mov rax,[abs fs:0xbbbbbbbb] + mov rbx,[abs fs:0xbbbbbbbb] + mov al,[abs fs:0xffffffffcccccccc] + mov bl,[abs fs:0xffffffffcccccccc] + mov ax,[abs fs:0xffffffffcccccccc] + mov bx,[abs fs:0xffffffffcccccccc] + mov eax,[abs fs:0xffffffffcccccccc] + mov ebx,[abs fs:0xffffffffcccccccc] + mov rax,[abs fs:0xffffffffcccccccc] + mov rbx,[abs fs:0xffffffffcccccccc] + + mov al,[abs dword fs:foo] + mov bl,[abs dword fs:foo] + mov ax,[abs dword fs:foo] + mov bx,[abs dword fs:foo] + mov eax,[abs dword fs:foo] + mov ebx,[abs dword fs:foo] + mov rax,[abs dword fs:foo] + mov rbx,[abs dword fs:foo] + mov al,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs dword fs:0xbbbbbbbb] + mov bl,[abs dword fs:0xbbbbbbbb] + mov ax,[abs dword fs:0xbbbbbbbb] + mov bx,[abs dword fs:0xbbbbbbbb] + mov eax,[abs dword fs:0xbbbbbbbb] + mov ebx,[abs dword fs:0xbbbbbbbb] + mov rax,[abs dword fs:0xbbbbbbbb] + mov rbx,[abs dword fs:0xbbbbbbbb] + mov al,[abs dword fs:0xffffffffcccccccc] + mov bl,[abs dword fs:0xffffffffcccccccc] + mov ax,[abs dword fs:0xffffffffcccccccc] + mov bx,[abs dword fs:0xffffffffcccccccc] + mov eax,[abs dword fs:0xffffffffcccccccc] + mov ebx,[abs dword fs:0xffffffffcccccccc] + mov rax,[abs dword fs:0xffffffffcccccccc] + mov rbx,[abs dword fs:0xffffffffcccccccc] + + mov al,[abs qword fs:foo] + mov bl,[abs qword fs:foo] + mov ax,[abs qword fs:foo] + mov bx,[abs qword fs:foo] + mov eax,[abs qword fs:foo] + mov ebx,[abs qword fs:foo] + mov rax,[abs qword fs:foo] + mov rbx,[abs qword fs:foo] + mov al,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[abs qword fs:0xbbbbbbbb] + mov bl,[abs qword fs:0xbbbbbbbb] + mov ax,[abs qword fs:0xbbbbbbbb] + mov bx,[abs qword fs:0xbbbbbbbb] + mov eax,[abs qword fs:0xbbbbbbbb] + mov ebx,[abs qword fs:0xbbbbbbbb] + mov rax,[abs qword fs:0xbbbbbbbb] + mov rbx,[abs qword fs:0xbbbbbbbb] + mov al,[abs qword fs:0xffffffffcccccccc] + mov bl,[abs qword fs:0xffffffffcccccccc] + mov ax,[abs qword fs:0xffffffffcccccccc] + mov bx,[abs qword fs:0xffffffffcccccccc] + mov eax,[abs qword fs:0xffffffffcccccccc] + mov ebx,[abs qword fs:0xffffffffcccccccc] + mov rax,[abs qword fs:0xffffffffcccccccc] + mov rbx,[abs qword fs:0xffffffffcccccccc] + + mov al,[rel fs:foo] + mov bl,[rel fs:foo] + mov ax,[rel fs:foo] + mov bx,[rel fs:foo] + mov eax,[rel fs:foo] + mov ebx,[rel fs:foo] + mov rax,[rel fs:foo] + mov rbx,[rel fs:foo] + mov al,[rel fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel fs:0xbbbbbbbb] + mov bl,[rel fs:0xbbbbbbbb] + mov ax,[rel fs:0xbbbbbbbb] + mov bx,[rel fs:0xbbbbbbbb] + mov eax,[rel fs:0xbbbbbbbb] + mov ebx,[rel fs:0xbbbbbbbb] + mov rax,[rel fs:0xbbbbbbbb] + mov rbx,[rel fs:0xbbbbbbbb] + mov al,[rel fs:0xffffffffcccccccc] + mov bl,[rel fs:0xffffffffcccccccc] + mov ax,[rel fs:0xffffffffcccccccc] + mov bx,[rel fs:0xffffffffcccccccc] + mov eax,[rel fs:0xffffffffcccccccc] + mov ebx,[rel fs:0xffffffffcccccccc] + mov rax,[rel fs:0xffffffffcccccccc] + mov rbx,[rel fs:0xffffffffcccccccc] + + mov al,[rel dword fs:foo] + mov bl,[rel dword fs:foo] + mov ax,[rel dword fs:foo] + mov bx,[rel dword fs:foo] + mov eax,[rel dword fs:foo] + mov ebx,[rel dword fs:foo] + mov rax,[rel dword fs:foo] + mov rbx,[rel dword fs:foo] + mov al,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel dword fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel dword fs:0xbbbbbbbb] + mov bl,[rel dword fs:0xbbbbbbbb] + mov ax,[rel dword fs:0xbbbbbbbb] + mov bx,[rel dword fs:0xbbbbbbbb] + mov eax,[rel dword fs:0xbbbbbbbb] + mov ebx,[rel dword fs:0xbbbbbbbb] + mov rax,[rel dword fs:0xbbbbbbbb] + mov rbx,[rel dword fs:0xbbbbbbbb] + mov al,[rel dword fs:0xffffffffcccccccc] + mov bl,[rel dword fs:0xffffffffcccccccc] + mov ax,[rel dword fs:0xffffffffcccccccc] + mov bx,[rel dword fs:0xffffffffcccccccc] + mov eax,[rel dword fs:0xffffffffcccccccc] + mov ebx,[rel dword fs:0xffffffffcccccccc] + mov rax,[rel dword fs:0xffffffffcccccccc] + mov rbx,[rel dword fs:0xffffffffcccccccc] + + mov al,[rel qword fs:foo] + mov bl,[rel qword fs:foo] + mov ax,[rel qword fs:foo] + mov bx,[rel qword fs:foo] + mov eax,[rel qword fs:foo] + mov ebx,[rel qword fs:foo] + mov rax,[rel qword fs:foo] + mov rbx,[rel qword fs:foo] + mov al,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov bl,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov ax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov bx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov eax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov rax,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel qword fs:0xaaaaaaaaaaaaaaaa] + mov al,[rel qword fs:0xbbbbbbbb] + mov bl,[rel qword fs:0xbbbbbbbb] + mov ax,[rel qword fs:0xbbbbbbbb] + mov bx,[rel qword fs:0xbbbbbbbb] + mov eax,[rel qword fs:0xbbbbbbbb] + mov ebx,[rel qword fs:0xbbbbbbbb] + mov rax,[rel qword fs:0xbbbbbbbb] + mov rbx,[rel qword fs:0xbbbbbbbb] + mov al,[rel qword fs:0xffffffffcccccccc] + mov bl,[rel qword fs:0xffffffffcccccccc] + mov ax,[rel qword fs:0xffffffffcccccccc] + mov bx,[rel qword fs:0xffffffffcccccccc] + mov eax,[rel qword fs:0xffffffffcccccccc] + mov ebx,[rel qword fs:0xffffffffcccccccc] + mov rax,[rel qword fs:0xffffffffcccccccc] + mov rbx,[rel qword fs:0xffffffffcccccccc] + + mov al,[es:foo] + mov bl,[es:foo] + mov ax,[es:foo] + mov bx,[es:foo] + mov eax,[es:foo] + mov ebx,[es:foo] + mov rax,[es:foo] + mov rbx,[es:foo] + mov al,[es:0xaaaaaaaaaaaaaaaa] + mov bl,[es:0xaaaaaaaaaaaaaaaa] + mov ax,[es:0xaaaaaaaaaaaaaaaa] + mov bx,[es:0xaaaaaaaaaaaaaaaa] + mov eax,[es:0xaaaaaaaaaaaaaaaa] + mov ebx,[es:0xaaaaaaaaaaaaaaaa] + mov rax,[es:0xaaaaaaaaaaaaaaaa] + mov rbx,[es:0xaaaaaaaaaaaaaaaa] + mov al,[es:0xbbbbbbbb] + mov bl,[es:0xbbbbbbbb] + mov ax,[es:0xbbbbbbbb] + mov bx,[es:0xbbbbbbbb] + mov eax,[es:0xbbbbbbbb] + mov ebx,[es:0xbbbbbbbb] + mov rax,[es:0xbbbbbbbb] + mov rbx,[es:0xbbbbbbbb] + mov al,[es:0xffffffffcccccccc] + mov bl,[es:0xffffffffcccccccc] + mov ax,[es:0xffffffffcccccccc] + mov bx,[es:0xffffffffcccccccc] + mov eax,[es:0xffffffffcccccccc] + mov ebx,[es:0xffffffffcccccccc] + mov rax,[es:0xffffffffcccccccc] + mov rbx,[es:0xffffffffcccccccc] + + mov al,[dword es:foo] + mov bl,[dword es:foo] + mov ax,[dword es:foo] + mov bx,[dword es:foo] + mov eax,[dword es:foo] + mov ebx,[dword es:foo] + mov rax,[dword es:foo] + mov rbx,[dword es:foo] + mov al,[dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[dword es:0xaaaaaaaaaaaaaaaa] + mov al,[dword es:0xbbbbbbbb] + mov bl,[dword es:0xbbbbbbbb] + mov ax,[dword es:0xbbbbbbbb] + mov bx,[dword es:0xbbbbbbbb] + mov eax,[dword es:0xbbbbbbbb] + mov ebx,[dword es:0xbbbbbbbb] + mov rax,[dword es:0xbbbbbbbb] + mov rbx,[dword es:0xbbbbbbbb] + mov al,[dword es:0xffffffffcccccccc] + mov bl,[dword es:0xffffffffcccccccc] + mov ax,[dword es:0xffffffffcccccccc] + mov bx,[dword es:0xffffffffcccccccc] + mov eax,[dword es:0xffffffffcccccccc] + mov ebx,[dword es:0xffffffffcccccccc] + mov rax,[dword es:0xffffffffcccccccc] + mov rbx,[dword es:0xffffffffcccccccc] + + mov al,[qword es:foo] + mov bl,[qword es:foo] + mov ax,[qword es:foo] + mov bx,[qword es:foo] + mov eax,[qword es:foo] + mov ebx,[qword es:foo] + mov rax,[qword es:foo] + mov rbx,[qword es:foo] + mov al,[qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[qword es:0xaaaaaaaaaaaaaaaa] + mov al,[qword es:0xbbbbbbbb] + mov bl,[qword es:0xbbbbbbbb] + mov ax,[qword es:0xbbbbbbbb] + mov bx,[qword es:0xbbbbbbbb] + mov eax,[qword es:0xbbbbbbbb] + mov ebx,[qword es:0xbbbbbbbb] + mov rax,[qword es:0xbbbbbbbb] + mov rbx,[qword es:0xbbbbbbbb] + mov al,[qword es:0xffffffffcccccccc] + mov bl,[qword es:0xffffffffcccccccc] + mov ax,[qword es:0xffffffffcccccccc] + mov bx,[qword es:0xffffffffcccccccc] + mov eax,[qword es:0xffffffffcccccccc] + mov ebx,[qword es:0xffffffffcccccccc] + mov rax,[qword es:0xffffffffcccccccc] + mov rbx,[qword es:0xffffffffcccccccc] + + mov al,[abs es:foo] + mov bl,[abs es:foo] + mov ax,[abs es:foo] + mov bx,[abs es:foo] + mov eax,[abs es:foo] + mov ebx,[abs es:foo] + mov rax,[abs es:foo] + mov rbx,[abs es:foo] + mov al,[abs es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs es:0xaaaaaaaaaaaaaaaa] + mov al,[abs es:0xbbbbbbbb] + mov bl,[abs es:0xbbbbbbbb] + mov ax,[abs es:0xbbbbbbbb] + mov bx,[abs es:0xbbbbbbbb] + mov eax,[abs es:0xbbbbbbbb] + mov ebx,[abs es:0xbbbbbbbb] + mov rax,[abs es:0xbbbbbbbb] + mov rbx,[abs es:0xbbbbbbbb] + mov al,[abs es:0xffffffffcccccccc] + mov bl,[abs es:0xffffffffcccccccc] + mov ax,[abs es:0xffffffffcccccccc] + mov bx,[abs es:0xffffffffcccccccc] + mov eax,[abs es:0xffffffffcccccccc] + mov ebx,[abs es:0xffffffffcccccccc] + mov rax,[abs es:0xffffffffcccccccc] + mov rbx,[abs es:0xffffffffcccccccc] + + mov al,[abs dword es:foo] + mov bl,[abs dword es:foo] + mov ax,[abs dword es:foo] + mov bx,[abs dword es:foo] + mov eax,[abs dword es:foo] + mov ebx,[abs dword es:foo] + mov rax,[abs dword es:foo] + mov rbx,[abs dword es:foo] + mov al,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs dword es:0xaaaaaaaaaaaaaaaa] + mov al,[abs dword es:0xbbbbbbbb] + mov bl,[abs dword es:0xbbbbbbbb] + mov ax,[abs dword es:0xbbbbbbbb] + mov bx,[abs dword es:0xbbbbbbbb] + mov eax,[abs dword es:0xbbbbbbbb] + mov ebx,[abs dword es:0xbbbbbbbb] + mov rax,[abs dword es:0xbbbbbbbb] + mov rbx,[abs dword es:0xbbbbbbbb] + mov al,[abs dword es:0xffffffffcccccccc] + mov bl,[abs dword es:0xffffffffcccccccc] + mov ax,[abs dword es:0xffffffffcccccccc] + mov bx,[abs dword es:0xffffffffcccccccc] + mov eax,[abs dword es:0xffffffffcccccccc] + mov ebx,[abs dword es:0xffffffffcccccccc] + mov rax,[abs dword es:0xffffffffcccccccc] + mov rbx,[abs dword es:0xffffffffcccccccc] + + mov al,[abs qword es:foo] + mov bl,[abs qword es:foo] + mov ax,[abs qword es:foo] + mov bx,[abs qword es:foo] + mov eax,[abs qword es:foo] + mov ebx,[abs qword es:foo] + mov rax,[abs qword es:foo] + mov rbx,[abs qword es:foo] + mov al,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[abs qword es:0xaaaaaaaaaaaaaaaa] + mov al,[abs qword es:0xbbbbbbbb] + mov bl,[abs qword es:0xbbbbbbbb] + mov ax,[abs qword es:0xbbbbbbbb] + mov bx,[abs qword es:0xbbbbbbbb] + mov eax,[abs qword es:0xbbbbbbbb] + mov ebx,[abs qword es:0xbbbbbbbb] + mov rax,[abs qword es:0xbbbbbbbb] + mov rbx,[abs qword es:0xbbbbbbbb] + mov al,[abs qword es:0xffffffffcccccccc] + mov bl,[abs qword es:0xffffffffcccccccc] + mov ax,[abs qword es:0xffffffffcccccccc] + mov bx,[abs qword es:0xffffffffcccccccc] + mov eax,[abs qword es:0xffffffffcccccccc] + mov ebx,[abs qword es:0xffffffffcccccccc] + mov rax,[abs qword es:0xffffffffcccccccc] + mov rbx,[abs qword es:0xffffffffcccccccc] + + mov al,[rel es:foo] + mov bl,[rel es:foo] + mov ax,[rel es:foo] + mov bx,[rel es:foo] + mov eax,[rel es:foo] + mov ebx,[rel es:foo] + mov rax,[rel es:foo] + mov rbx,[rel es:foo] + mov al,[rel es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel es:0xaaaaaaaaaaaaaaaa] + mov al,[rel es:0xbbbbbbbb] + mov bl,[rel es:0xbbbbbbbb] + mov ax,[rel es:0xbbbbbbbb] + mov bx,[rel es:0xbbbbbbbb] + mov eax,[rel es:0xbbbbbbbb] + mov ebx,[rel es:0xbbbbbbbb] + mov rax,[rel es:0xbbbbbbbb] + mov rbx,[rel es:0xbbbbbbbb] + mov al,[rel es:0xffffffffcccccccc] + mov bl,[rel es:0xffffffffcccccccc] + mov ax,[rel es:0xffffffffcccccccc] + mov bx,[rel es:0xffffffffcccccccc] + mov eax,[rel es:0xffffffffcccccccc] + mov ebx,[rel es:0xffffffffcccccccc] + mov rax,[rel es:0xffffffffcccccccc] + mov rbx,[rel es:0xffffffffcccccccc] + + mov al,[rel dword es:foo] + mov bl,[rel dword es:foo] + mov ax,[rel dword es:foo] + mov bx,[rel dword es:foo] + mov eax,[rel dword es:foo] + mov ebx,[rel dword es:foo] + mov rax,[rel dword es:foo] + mov rbx,[rel dword es:foo] + mov al,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel dword es:0xaaaaaaaaaaaaaaaa] + mov al,[rel dword es:0xbbbbbbbb] + mov bl,[rel dword es:0xbbbbbbbb] + mov ax,[rel dword es:0xbbbbbbbb] + mov bx,[rel dword es:0xbbbbbbbb] + mov eax,[rel dword es:0xbbbbbbbb] + mov ebx,[rel dword es:0xbbbbbbbb] + mov rax,[rel dword es:0xbbbbbbbb] + mov rbx,[rel dword es:0xbbbbbbbb] + mov al,[rel dword es:0xffffffffcccccccc] + mov bl,[rel dword es:0xffffffffcccccccc] + mov ax,[rel dword es:0xffffffffcccccccc] + mov bx,[rel dword es:0xffffffffcccccccc] + mov eax,[rel dword es:0xffffffffcccccccc] + mov ebx,[rel dword es:0xffffffffcccccccc] + mov rax,[rel dword es:0xffffffffcccccccc] + mov rbx,[rel dword es:0xffffffffcccccccc] + + mov al,[rel qword es:foo] + mov bl,[rel qword es:foo] + mov ax,[rel qword es:foo] + mov bx,[rel qword es:foo] + mov eax,[rel qword es:foo] + mov ebx,[rel qword es:foo] + mov rax,[rel qword es:foo] + mov rbx,[rel qword es:foo] + mov al,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov bl,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov ax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov bx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov eax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov ebx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov rax,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov rbx,[rel qword es:0xaaaaaaaaaaaaaaaa] + mov al,[rel qword es:0xbbbbbbbb] + mov bl,[rel qword es:0xbbbbbbbb] + mov ax,[rel qword es:0xbbbbbbbb] + mov bx,[rel qword es:0xbbbbbbbb] + mov eax,[rel qword es:0xbbbbbbbb] + mov ebx,[rel qword es:0xbbbbbbbb] + mov rax,[rel qword es:0xbbbbbbbb] + mov rbx,[rel qword es:0xbbbbbbbb] + mov al,[rel qword es:0xffffffffcccccccc] + mov bl,[rel qword es:0xffffffffcccccccc] + mov ax,[rel qword es:0xffffffffcccccccc] + mov bx,[rel qword es:0xffffffffcccccccc] + mov eax,[rel qword es:0xffffffffcccccccc] + mov ebx,[rel qword es:0xffffffffcccccccc] + mov rax,[rel qword es:0xffffffffcccccccc] + mov rbx,[rel qword es:0xffffffffcccccccc] + foo: diff --git a/test/riprel.pl b/test/riprel.pl index fa4405e2..0f016df0 100644 --- a/test/riprel.pl +++ b/test/riprel.pl @@ -5,15 +5,17 @@ print "\tbits 64\n"; foreach $mode ('abs', 'rel') { print "\n\tdefault $mode\n\n"; - foreach $rq ('', 'abs ', 'rel ') { - foreach $sq ('', 'dword ', 'qword ') { - foreach $v ('foo', '0xaaaaaaaaaaaaaaaa', '0xbbbbbbbb', - '0xffffffffcccccccc') { - foreach $r ('al', 'bl', 'ax', 'bx', 'eax', 'ebx', 'rax', 'rbx') { - print "\tmov $r,[$rq$sq$v]\n"; + foreach $so ('', 'fs:', 'es:') { + foreach $rq ('', 'abs ', 'rel ') { + foreach $sq ('', 'dword ', 'qword ') { + foreach $v ('foo', '0xaaaaaaaaaaaaaaaa', '0xbbbbbbbb', + '0xffffffffcccccccc') { + foreach $r ('al', 'bl', 'ax', 'bx', 'eax', 'ebx', 'rax', 'rbx') { + print "\tmov $r,[$rq$sq$so$v]\n"; + } } + print "\n"; } - print "\n"; } } }