This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


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

Re: Long double support on m68k


Andrew Cagney <ac131313@cygnus.com> writes:

|> > Andrew Cagney <ac131313@cygnus.com> writes:
|> > |> > This patch enables long double support for m68k.
|> > |> > Andreas.
|> > |> > 2001-07-23  Andreas Schwab  <schwab@suse.de>
|> > |> > * config/m68k/tm-m68k.h (TARGET_LONG_DOUBLE_FORMAT): Define.
|> > |> > (TARGET_LONG_DOUBLE_BIT): Define.
|> > |> > (REGISTER_VIRTUAL_SIZE): Return 12 for floating point registers.
|> > |> > (MAX_REGISTER_VIRTUAL_SIZE): Increase to 12.
|> > |> > (REGISTER_VIRTUAL_TYPE): Return builtin_type_long_double for
|> > |> > floating point registers.
|> > |> > (REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL,
|> > |> > REGISTER_CONVERT_TO_RAW): Remove.
|> > |> > * config/m68k/xm-linux.h (HOST_LONG_DOUBLE_FORMAT): Define.
|> > |> |> |> The patch changes something included by all the other config/m68k/tm-*.h
|> > |> header files.  Can you explain why it won't break some of those targets.
|> > Well, that's how the m68k looks like on all targets (if they support
|> > floating point at all).  All targets that make use of the fpu do it
|> > similar as m68k-linux and don't touch any of the macros I changed, so I
|> > think this should be safe.  The patch only changes the representation of
|> > floating point values at gdb's point of view, not how the target is using
|> > it.
|> 
|> 
|> So, what you're saying is that:
|> 
|> o only tm-m68k defines the current
|> 	REGISTER_CONVERT* macros.  All
|> 	m68k targets import/use this.

Yes (if they support the fpu at all).

|> So, if a target's raw FP registers are in the correct format for
|> REGISTER_CONVERT* then they are also in the correct format for this change
|> and such targets will continue to work.  If a target's raw FP registers
|> were not in the correct format then, that target is already broken and
|> this change doesn't make things better or worse.

Yes.  There is only one floating point format for the m68k fpu.  The
previous version already assumed floatformat_m68881_ext, this patch just
removes the conversion, and makes the raw format avaliable to gdb.

Andreas.

-- 
Andreas Schwab                                  "And now for something
SuSE Labs                                        completely different."
Andreas.Schwab@suse.de
SuSE GmbH, Schanzäckerstr. 10, D-90443 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5


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