From: swami Date: Thu, 27 Nov 2008 12:01:26 +0000 (+0000) Subject: *c-cr16.texi (cr16-operand specifiers): Add got/GOT and cgot/cGOT. X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=55affcd2f4ccaa1d4713b66536125b313b7cba2d;p=pf3gnuchains%2Fpf3gnuchains3x.git *c-cr16.texi (cr16-operand specifiers): Add got/GOT and cgot/cGOT. --- diff --git a/gas/doc/c-cr16.texi b/gas/doc/c-cr16.texi index 4748d5679e..b6a6b37b17 100644 --- a/gas/doc/c-cr16.texi +++ b/gas/doc/c-cr16.texi @@ -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