aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/doc/c-cr16.texi12
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