syntax question

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!

Reply to
dodgegeek
Loading thread data ...

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
 Click to see the full signature
Reply to
Michael N. Moran

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.