one more thing to think about: if you decide to use "rip:" or "rip " prefix for RIP-relative addressing, how are you going to specify RIP relative addressing with immediate as displacement?
I mean something like "mov eax, " in FASM (8B 05 0000000A)
there should be nicer way than "mov eax, " (6 is length of current instruction)
I mean something like "mov eax, " in FASM (8B 05 0000000A)
there should be nicer way than "mov eax, " (6 is length of current instruction)
one more thing to think about: if you decide to use "rip:" or "rip " prefix for RIP-relative addressing, how are you going to specify RIP relative addressing with immediate as displacement?
I mean something like "mov eax, " in FASM (8B 05 0000000A)
there should be nicer way than "mov eax, " (6 is length of current instruction)
I don't understand, it seems like you are confusing NASM with YASM. We are not following YASM's design, we are taking our time and doing it right the first time ;)
Anyhow, read a few replies up, NASM already accounts for the distinction between labels and immediate values. "mov eax, " does just that, it uses the ModRM form for RIP-relative addressing with a displacement of 10... which would actually be (8B 05 0A000000). Don't forget your little endian friends ;)
sorry, missed that. I wonder how will the final support look like... at least two ways to use RIP relative addressing? Or just the ARMy ""? :]
(by the way, i placed those digits in 0000000A on purpose. No spaces between 00s should indicate this is a dword)
(by the way, i placed those digits in 0000000A on purpose. No spaces between 00s should indicate this is a dword)
sorry, missed that. I wonder how will the final support look like... at least two ways to use RIP relative addressing? Or just the ARMy ""? :]
Well, all roads lead to Rome. There should be just as many options as there are now... RIP just adds another level.