diff options
-rw-r--r-- | gas/doc/c-cr16.texi | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/gas/doc/c-cr16.texi b/gas/doc/c-cr16.texi index 4748d56..b6a6b37 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 |