This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[PATCH] gas: Document sparc's %l34 and %h34
- From: David Miller <davem at davemloft dot net>
- To: binutils at sourceware dot org
- Date: Tue, 17 Apr 2012 19:24:17 -0400 (EDT)
- Subject: [PATCH] gas: Document sparc's %l34 and %h34
Ok to commit?
gas/
* doc/c-sparc.text: Document %l34 and %h34.
diff --git a/gas/doc/c-sparc.texi b/gas/doc/c-sparc.texi
index 099c031..a47e8b2 100644
--- a/gas/doc/c-sparc.texi
+++ b/gas/doc/c-sparc.texi
@@ -584,9 +584,24 @@ also be generated using @samp{%ulo}.
@item
@code{R_SPARC_M44} is requested using @samp{%m44}.
@item
-@code{R_SPARC_L44} is requested using @samp{%l44}.
+@code{R_SPARC_L44} is requested using @samp{%l44} or @samp{%l34}.
+@item
+@code{R_SPARC_H34} is requested using @samp{%h34}.
@end itemize
+The @samp{%l34} generates a @code{R_SPARC_L44} relocation because it
+calculates the necessary value, and therefore no explicit
+@code{R_SPARC_L34} relocation needed to be created for this purpose.
+
+The @samp{%h34} and @samp{%l34} relocations are used for the abs34 code
+model. Here is an example abs34 address generation sequence:
+
+@example
+sethi %h34(symbol), %g1
+sllx %g1, 2, %g1
+or %g1, %l34(symbol), %g1
+@end example
+
The PC relative relocation @code{R_SPARC_PC22} can be obtained by
enclosing an operand inside of @samp{%pc22}. Likewise, the
@code{R_SPARC_PC10} relocation can be obtained using @samp{%pc10}.