I have encountered some assembly code I do not understand. Can anyone tell me what this means?
lis %r7, ((word_16DB6A+0x10000)@h)
I understand the load immediate signed, and the word_16DB6A is defined as short 0x20, and +0x10000 is add 0x10000,
but what does the "@h" mean???
Many thanks!
Didn't find your answer? Ask the community — no account required.
M
Michael N. Moran
I'm guessing that this is powerpc assembly. IIRC, the @h means the high 16-bits of the word.
A single 32-bit instruction cannot hold an entire
32-bit operand. Thus, two instructions are required. The first loads the register with half (16-bits) of the 32-bit operand and the next instruction merges the other half (16-bits). Its a RISC thing :)
Michael N. Moran (h) 770 516 7918
5009 Old Field Ct. (c) 678 521 5460
Kennesaw, GA, USA 30144 http://mnmoran.org
"So often times it happens, that we live our lives in chains
and we never even know we have the key."
"Already Gone" by Jack Tempchin (recorded by The Eagles)
The Beatles were wrong: 1 & 1 & 1 is 1
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required
Report Content
You are reporting this content to the moderators. They will look at it
ASAP.