]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
Assembler Internal Docs: Describe handling of opcodes for relaxation a bit better.
authorThomas Koenig <tkoenig@netcologne.de>
Tue, 18 Apr 2023 10:21:58 +0000 (11:21 +0100)
committerNick Clifton <nickc@redhat.com>
Tue, 18 Apr 2023 10:21:58 +0000 (11:21 +0100)
gas/ChangeLog
gas/doc/internals.texi

index e7db2d8319741bfbffc38136d3ae630cdc95f61f..760230dc7b6e76c83c850f659ec6a8ac00c32048 100644 (file)
@@ -1,3 +1,8 @@
+2023-04-18  Thomas Koenig  <tkoenig@netcologne.de>
+
+       * doc/internals.texi (Relaxing with a table): Describe handling of
+       opcodes for relaxation a bit better.
+
 2023-04-13  Claudiu Zissulescu  <claziss@synopsys.com>
 
         * testsuite/gas/cfi/cfi-arc-1.s: Use baseline instructions.
index cb568d6edfdfe7d36eea3b21cfea235c2c517caa..56f10fd16fad0fe7d4e874aa21acd3e84d612cdd 100644 (file)
@@ -1824,9 +1824,11 @@ opcode field from the relaxable frag.  It is not guaranteed to be the same frag.
 If you need to emit fixups for the opcode field from inspection of the
 relaxable frag, then you need to generate a common frag for both the basic
 opcode and relaxable fields, or you need to provide the frag for the opcode to
-pass to @code{fix_new}.  The latter can be done for example by defining
-@code{TC_FRAG_TYPE} to include a pointer to it and defining @code{TC_FRAG_INIT}
-to set the pointer.
+pass to @code{fix_new}.  The latter can be done by passing a pointer to the
+opcode in the call to @code{frag_var} or @code{frag_variant}, and accessing
+it via @code{fr_opcode}.  See the @file{tc-vax.c}  and @file{tc-m68k.c} for
+examples.  It is also possible for  @code{TC_FRAG_TYPE} to include a pointer to
+the opcode and defining @code{TC_FRAG_INIT} to set the pointer.
 
 Sometimes @code{fr_var} is increased instead, and @code{frag_wane} is not
 called.  I'm not sure, but I think this is to keep @code{fr_fix} referring to