*c-cr16.texi (cr16-operand specifiers): Add got/GOT and cgot/cGOT.

This commit is contained in:
M R Swami Reddy 2008-11-27 12:01:26 +00:00
parent 0b9e228a4d
commit 95beeee886

View file

@ -34,6 +34,10 @@ Operand expression type qualifier is an optional field in the instruction operan
- @code{Specifies expression operand type as large}
@item c
- @code{Specifies the CR16 Assembler generates a relocation entry for the operand, where pc has implied bit, the expression is adjusted accordingly. The linker uses the relocation entry to update the operand address at link time.}
@item got/GOT
- @code{Specifies the CR16 Assembler generates a relocation entry for the operand, offset from Global Offset Table. The linker uses this relocation entry to update the operand address at link time}
@item cgot/cGOT
- @code{Specifies the CompactRISC Assembler generates a relocation entry for the operand, where pc has implied bit, the expression is adjusted accordingly. The linker uses the relocation entry to update the operand address at link time.}
@end table
CR16 target operand qualifiers and its size (in bits):
@ -77,4 +81,12 @@ For example:
@code{jal (r1,r0)}
This .long directive, the address of _myfunc, shifted right by 1 at link time.
4 @code{loadd _data1@@GOT(r12), (r1,r0)}
This loads the address of _data1, into global offset table (ie GOT) and its offset value from GOT loads into register-pair r2-r1.
5 @code{loadd _myfunc@@cGOT(r12), (r1,r0)}
This loads the address of _myfun, shifted right by 1, into global offset table (ie GOT) and its offset value from GOT loads into register-pair r1-r0.
@end example