x86 64 assembly-Collection of common programming errors

I am writing a self modifying code.

movq      $TARGET_CIA, 0x550(%rax)

This symbol TARGET_CIA is undefined initially and at run time I try to copy a 64 bit immediate value to this location. But at compile time this instruction takes the value of this undefined immediate value as 32 bit and when i try to copy the 64 bits, I see the signed extended 32 bits at its place. Is there a way to get this undefined symbol treated as 64 bit value?

Originally posted 2013-11-09 23:32:38.