When building with --enable-ubsan, the relocation code triggers:
UBSAN: Undefined behaviour in get-dynamic-info.h:56:30 left shift of
1879047925 by 1 cannot be represented in type 'int'
Originally from
https://sourceware.org/pipermail/libc-alpha/2015-August/063015.html.
range. Be compatible. */
#define DT_AUXILIARY 0x7ffffffd /* Shared object to load before self */
#define DT_FILTER 0x7fffffff /* Shared object to get values from */
-#define DT_EXTRATAGIDX(tag) ((Elf32_Word)-((Elf32_Sword) (tag) <<1>>1)-1)
+#define DT_EXTRATAGIDX(tag) (-((Elf32_Sword)((Elf32_Word)(tag) * 2) / 2 + 1))
#define DT_EXTRANUM 3
/* Values of `d_un.d_val' in the DT_FLAGS entry. */