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: [gcc] Re: sh-elf-4_1-branch created


amylaar@spamcop.net wrote:
>> It looks some tests using NaN fail on this target.
> 
> This is funny.  I have this change in OPTIMIZATION_OPTIONS,
> 
> +  if (TARGET_SH2E && ! TARGET_IEEE)					\
> +    flag_finite_math_only = 1;						\
> 
> but it shouldn't really affect these tests, because they should run with
> -mieee in the first place.

I've found that TARGET_IEEE is always 0 in OPTIMIZATION_OPTIONS
even if -mieee is given.  opts.c:decode_options looks like:

...
#ifdef OPTIMIZATION_OPTIONS
  /* Allow default optimizations to be specified on a per-machine basis.  */
  OPTIMIZATION_OPTIONS (optimize, optimize_size);
#endif

  handle_options (argc, argv, lang_mask);
...

and -mieee is handled in handle_options.

>> 2005-04-09  Kaz Kojima  <kkojima@gcc.gnu.org>
>>
>> 	* config/sh/lib1funcs.asm (ic_invalidate): Fix typos.
>> 	* config/sh/t-linux (LIB1ASMFUNCS_CACHE): Add _ic_invalidate_array.
> 
> OK.

Thanks.  I've checked it in.

> I have to admit that ic_invalidate was one of these conflict areas where
> the only appropriate merge action seemed to be a rewrite, and I forgot that
> it didn't even get build exposure in my tests.
> The ic_invalidate_array part is really supposed to be in a separate part,
> with a default possibly available in the static library, but since the symbol
> is not exported, I suppose we don't commit to anything by having it inside
> libgcc.so for now.
> The default settings are so that they should work with the existing hardware
> (which is more than could be said for the previous ic_invalidate
> implementation), but they are not ideal for all hardware, and it will likely
> not work with some future hardware.
> The idea is that you can have a libgcc.so which can be installed on a wide
> range of sh4 flavours, with an undefined symbol for _ic_invalidate_array
> (That's why I use @GOT addressing in ic_invalidate), and install a special
> library for ic_invalidate_array which is more target-specific.  If your
> hardware has a large cache, and no icbi instruction, this can be provided
> by mapping a single page repeatedly.

Indeed.

BTW, the native bootstrap catches warnings below and stops.  I'll
try it again with --disable-werror.

stage1/xgcc -Bstage1/ -B/usr/gnu/sh4-unknown-linux-gnu/bin/ -c   -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros -Wold-style-definition -Werror    -DHAVE_CONFIG_H    -I. -I. -I../../LOCAL/gcc-4.1-sh/gcc -I../../LOCAL/gcc-4.1-sh/gcc/. -I../../LOCAL/gcc-4.1-sh/gcc/../include -I../../LOCAL/gcc-4.1-sh/gcc/../libcpp/include  \
        ../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c -o sh.o
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:577:79: error: C++ style comments are not allowed in ISO C90
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:577:79: error: (this will be reported only once per input file)
cc1: warnings being treated as errors
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c: In function 'ua_offset':
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:8775: warning: old-style function definition
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c: In function 'sh_output_mi_thunk':
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10179: warning: comparison between signed and unsigned
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c: In function 'sh_adjust_unroll_max':
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10674: warning: unused parameter 'loop'
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10674: warning: unused parameter 'insn_count'
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10675: warning: unused parameter 'strength_reduce_p'
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10676: warning: unused parameter 'unroll_type'
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c: In function 'replace_n_hard_rtx':
../../LOCAL/gcc-4.1-sh/gcc/config/sh/sh.c:10997: warning: comparison between signed and unsigned
make[2]: *** [sh.o] Error 1

Regards,
	kaz


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