Assembly language > Assembly discussions
About addressing in x64
Greenhorn:
--- Quote from: CommonTater on June 21, 2012, 09:00:34 PM ---64 bit aps suffer no such limitation ...
--- End quote ---
Yes, unless you specify /LARGEADDRESSAWARE:NO ...
http://msdn.microsoft.com/en-us/library/aa384271%28VS.85%29.aspx
CommonTater:
--- Quote from: Greenhorn on June 21, 2012, 10:33:24 PM ---
--- Quote from: CommonTater on June 21, 2012, 09:00:34 PM ---64 bit aps suffer no such limitation ...
--- End quote ---
Yes, unless you specify /LARGEADDRESSAWARE:NO ...
http://msdn.microsoft.com/en-us/library/aa384271%28VS.85%29.aspx
--- End quote ---
Strange... Live and learn, I guess... thanks for the link.
themaster:
--- Quote from: Greenhorn on June 21, 2012, 04:50:06 PM ---I don't know if it is the best solution, but you can do it like this:
lea rcx, hInstance
mov rcx, qword ptr [rcx]
--- End quote ---
Just tested. Instruction
--- Code: ---lea rcx, hInstance
--- End code ---
also is cause of linker's clause, "Relocation type ADDR32 is invalid without /LARGEADDRESSAWARE:NO, for symbol...".
May be I should write some another form of this instruction? Or I can change other linker's parameters?
What is interesting: I wrote the same "hello world" application by C and read disassembly. There is another string and no linker clause:
--- Code: ---lea rcx, [hInstance]
--- End code ---
Square brackets added. But in assembler file clause presents, at both variants, with brackets and without them.
Greenhorn:
Maybe it is more helpful if you could post the whole ASM code and the console output ...
Or better attach the whole project files.
Greenhorn:
--- Quote from: CommonTater on June 21, 2012, 10:57:54 PM ---Strange... Live and learn, I guess...
--- End quote ---
This comes daily in my mind, too... :D
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version