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]
Other format: [Raw text]

ARM float changes


(Sorry for breaking threading, I have a trigger happy delete finger...)

Have you tested this change on stabs debugging?  If you were testing with
GCC head and did not do so explicitly, GCC now defaults to DWARF-2 for a
substantial number of targets.

I ask because your change is probably wrong for stabs.  Stabs _never_ sets
TYPE_FLAG_PROTOTYPED at present, and so this may break the calling of
prototyped functions taking float using stabs debugging.

default_coerce_float_to_double appears to have the opposite problem and
break DWARF-2.


For instance, my results on i386-linux, callfuncs.exp:
	  standard coercion			default coercion
	  =================			================

GCC 2.95
  stabs+	1 XPASS, 1 FAIL, 1 XFAIL	1 FAIL, 2 XPASS
  dwarf2	1 FAIL				5 FAIL

GCC 3.0.4pre
  stabs+	1 XPASS, 1 XFAIL		2 XPASS
  dwarf2	0 FAILS				4 FAIL


What particularly do these mean?
  - 1 FAIL for all the 2.95 cases is unrelated, a backtrace/prologue
problem.
  - The default coercion, which GDB uses on this target, promotes
floats on DWARF-2.  Incorrectly.
  - The "standard" coercion promotes floats incorrectly on stabs, but in two
of the four cases we promote incorrectly for DWARF-2.

Simply disabling promotion is about equivalent to default coercion.  

-- 
Daniel Jacobowitz                           Carnegie Mellon University
MontaVista Software                         Debian GNU/Linux Developer


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