HOWTO_RSIZE

Alan Modra amodra@gmail.com
Wed Jun 8 11:58:29 GMT 2022


Define a helper macro for HOWTO.

       * reloc.c (HOWTO_RSIZE): Define.
       (HOWTO): Use it.
       * bfd-in2.h: Regenerate.

diff --git a/bfd/bfd-in2.h b/bfd/bfd-in2.h
index 25061e153c7..02ba9706c26 100644
--- a/bfd/bfd-in2.h
+++ b/bfd/bfd-in2.h
@@ -2135,9 +2135,10 @@ struct reloc_howto_struct
   const char *name;
 };
 
+#define HOWTO_RSIZE(sz) (sz < 0 ? -sz : sz)
 #define HOWTO(type, right, size, bits, pcrel, left, ovf, func, name,   \
               inplace, src_mask, dst_mask, pcrel_off)                  \
-  { (unsigned) type, size < 0 ? -size : size, bits, right, left, ovf,  \
+  { (unsigned) type, HOWTO_RSIZE (size), bits, right, left, ovf,       \
     size < 0, pcrel, inplace, pcrel_off, src_mask, dst_mask, func, name }
 #define EMPTY_HOWTO(C) \
   HOWTO ((C), 0, 0, 0, false, 0, complain_overflow_dont, NULL, \
diff --git a/bfd/reloc.c b/bfd/reloc.c
index 3d1768fe013..d0b2b2013dd 100644
--- a/bfd/reloc.c
+++ b/bfd/reloc.c
@@ -375,9 +375,10 @@ DESCRIPTION
 	The HOWTO macro fills in a reloc_howto_type (a typedef for
 	const struct reloc_howto_struct).
 
+.#define HOWTO_RSIZE(sz) (sz < 0 ? -sz : sz)
 .#define HOWTO(type, right, size, bits, pcrel, left, ovf, func, name,	\
 .              inplace, src_mask, dst_mask, pcrel_off)			\
-.  { (unsigned) type, size < 0 ? -size : size, bits, right, left, ovf,	\
+.  { (unsigned) type, HOWTO_RSIZE (size), bits, right, left, ovf,	\
 .    size < 0, pcrel, inplace, pcrel_off, src_mask, dst_mask, func, name }
 
 DESCRIPTION

-- 
Alan Modra
Australia Development Lab, IBM


More information about the Binutils mailing list