This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC 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: [Fwd: sh-elf-4_1-branch partial merge to mainline]


Joern Rennecke wrote:

I've merged the SH specific code from the sh-elf-4_1-branch into
a copy of mainline from yesterday.


I'm testing this for i686-px-linux-gnu native, and X sh64-elf and sh-elf
with H.J. Lu's patch for binutils PR936.
A number of regressions are expected for sh64-elf because the middle
end is still broken in various ways, but I'll check that all the above
targets build, there are no new regressions for the native build, and
any new regressions can be plausibly attributed to the known bugs (all
of which have patches waitning for review), before checking this in.
I expect to look at the results on monday.

I've checked the merge in now.

i686-pc-linux-gnu native bootstrap / regtest finished without new regressions.

sh64-elf didn't build in the baseline, but it did build with the patches,
so this is an improvement, but no exact regression comparison is available.
The observed regressions were in line with what was seen before in earlier
snapshots.

sh-elf has some regressions fixed, and showed two groups of new regressions
that already have patches waiting for review:

FAIL: gcc.c-torture/execute/ashrdi-1.c execution,  -O0
FAIL: gcc.c-torture/execute/ashrdi-1.c execution,  -O1
FAIL: gcc.c-torture/execute/ashrdi-1.c execution,  -O2
FAIL: gcc.c-torture/execute/ashrdi-1.c execution,  -Os
PR middle-end/20714

FAIL: gcc.c-torture/compile/951116-1.c  -O2  (test for excess errors)
FAIL: gcc.c-torture/compile/951116-1.c  -O3 -fomit-frame-pointer  (test for exce
ss errors)
FAIL: gcc.c-torture/compile/951116-1.c  -O3 -g  (test for excess errors)
FAIL: gcc.c-torture/compile/951116-1.c  -Os  (test for excess errors)
PR rtl-optimization/20756

There was one more regression for which I have applied an obvious fix:

FAIL: gcc.dg/pr20922-5.c scan-tree-dump-times  = 0 0

2005-05-09  J"orn Rennecke <joern.rennecke@st.com>

	* config/sh/sh.h (OVERRIDE_OPTIONS): Don't set flag_finite_math_only
	if flag_signaling_nans is set.
	For TARGET_SH2E, if flag_finite_math_only is not set, set IEEE_BIT.
	* doc/invoke.texi (SH -mieee): Document relation to -ffinite-math-only.

*** config/sh/sh.h-merged	2005-05-09 15:43:05.000000000 +0100
--- config/sh/sh.h	2005-05-09 16:40:06.000000000 +0100
*************** do {									\
*** 854,860 ****
    int regno;								\
  									\
    if (flag_finite_math_only == 2)					\
!     flag_finite_math_only = TARGET_SH2E && ! TARGET_IEEE;		\
    sh_cpu = CPU_SH1;							\
    assembler_dialect = 0;						\
    if (TARGET_SH2)							\
--- 854,863 ----
    int regno;								\
  									\
    if (flag_finite_math_only == 2)					\
!     flag_finite_math_only						\
!       = !flag_signaling_nans && TARGET_SH2E && ! TARGET_IEEE;		\
!   if (TARGET_SH2E && !flag_finite_math_only)				\
!     target_flags |= IEEE_BIT;						\
    sh_cpu = CPU_SH1;							\
    assembler_dialect = 0;						\
    if (TARGET_SH2)							\
*** doc/invoke.texi-tagged	2005-05-09 16:07:51.000000000 +0100
--- doc/invoke.texi	2005-05-09 16:39:23.000000000 +0100
*************** Mark the @code{MAC} register as call-clo
*** 11463,11468 ****
--- 11469,11479 ----
  @item -mieee
  @opindex mieee
  Increase IEEE-compliance of floating-point code.
+ At the moment, this is equivalent to @option{-fno-finite-math-only}.
+ When generating 16 bit SH opcodes, getting IEEE-conforming results for
+ comparisons of NANs / infinities incurs extra overhead in every
+ floating point comparison, therefore the default is set to
+ @option{-ffinite-math-only}.
  
  @item -misize
  @opindex misize

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