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: 2.19 -enable-targets=all one error in m68k-dis.c due to longjmp, easily fixed with volatile


Nick Clifton <nickc@redhat.com> writes:

> Hi Andreas,
>
>>> + static fprintf_ftype save_printer;
>>> + static void (* save_print_address) (bfd_vma, struct disassemble_info *);
>>
>> This is wrong, these variables are never set.  The save/restore part
>> should be completely local to match_insn_m68k, no other function should
>> need to touch them.
>
> Good point - that was a hold over from a previous version of the
> patch. Sorry.

Why did you checked in this broken patch?  There are more bugs in it:

  /* Get a 1 byte signed integer.  */
! #define NEXTBYTE(p, val)			\
!   do						\
!     {						\
!       p += 2;					\
!       if (FETCH_DATA (info, p) < 0)		\

FETCH_DATA never returns < 0.

  /* Get a double precision float.  */
! #define NEXTDOUBLE(val, p)					\
!   do								\
!     {								\
!       p += 8;							\
!       if (FETCH_DATA (info, p) , 0)				\

Also never true.

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]