This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][M68K] Binutils support for TLS


Maxim Kuvyrkov <maxim@codesourcery.com> writes:

> +  /* Check if we should switch to negative range of the offsets. */
> +  if (arg->offset1[got_offset_size] + entry_size
> +      > arg->offset2[got_offset_size])
> +    {
> +      /* Verify that this is the only switch to negative range for
> +	 got_offset_size.  */
> +      BFD_ASSERT (arg->use_neg_got_offsets_p
> +		  && (arg->offset2[got_offset_size]
> +		      != arg->offset2[- got_offset_size - 1]));
> +
> +      /* Switch.  */
> +      arg->offset1[got_offset_size] = arg->offset1[-got_offset_size - 1];
> +      arg->offset2[got_offset_size] = arg->offset2[-got_offset_size - 1];

I'm getting an assertion failures when running the linker tests.  You
need to initialize arg_.use_neg_got_offsets_p before calling
hash_traverse in elf_m68k_finalize_got_offsets.  Furthermore, the
underlying type of an enum may be unsigned, so you need to cast to int
before negating it.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]