Re: [Patch,AVR]: PR49313

2011-07-29 Thread Georg-Johann Lay
http://gcc.gnu.org/ml/gcc-patches/2011-07/msg02424.html Richard Henderson wrote: > On 07/27/2011 09:12 AM, Georg-Johann Lay wrote: >> PR target/49313 >> * config/avr/libgcc.S (__ffshi2): Don't skip 2-word instruction. >> (__ctzsi2): Result for 0 may be undefined. >> (__ctzhi2):

Re: [Patch,AVR]: PR49313

2011-07-27 Thread Richard Henderson
On 07/27/2011 09:12 AM, Georg-Johann Lay wrote: > PR target/49313 > * config/avr/libgcc.S (__ffshi2): Don't skip 2-word instruction. > (__ctzsi2): Result for 0 may be undefined. > (__ctzhi2): Result for 0 may be undefined. > (__popcounthi2): Don't clobber r30. Use __po

[Patch,AVR]: PR49313

2011-07-27 Thread Georg-Johann Lay
This patch is to finalize the work on PR49313, i.e. better libgcc implementation of some functions like bswap, counting zeros, parity and popcount. These functions are already implemented in libgcc. This patch now provides a better integration of these functions: the calls are no more emit as ord

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-17 Thread Georg-Johann Lay
Richard Henderson schrieb: > On 06/17/2011 02:20 AM, Georg-Johann Lay wrote: >> Richard Henderson schrieb: >>> On 06/15/2011 02:47 AM, Georg-Johann Lay wrote: >> >> Yes, you are right. Following patchlet ok? >> >> Johann >> >> * config/avr/libgcc.S (__ctzsi2, __ctzhi2): >> Map zero to 255

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-17 Thread Richard Henderson
On 06/17/2011 02:20 AM, Georg-Johann Lay wrote: > Richard Henderson schrieb: >> On 06/15/2011 02:47 AM, Georg-Johann Lay wrote: >>> +#if defined (L_loop_ffsqi2) >>> +;; Helper for ffshi2, ffssi2 >>> +;; r25:r24 = r26 + zero_extend16 (ffs8(r24)) >>> +;; r24 must be != 0 >>> +;; clobbers: r26 >>> +DE

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-17 Thread Georg-Johann Lay
Richard Henderson schrieb: > On 06/15/2011 02:47 AM, Georg-Johann Lay wrote: >> +#if defined (L_loop_ffsqi2) >> +;; Helper for ffshi2, ffssi2 >> +;; r25:r24 = r26 + zero_extend16 (ffs8(r24)) >> +;; r24 must be != 0 >> +;; clobbers: r26 >> +DEFUN __loop_ffsqi2 > > Why does this function have "loop"

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-16 Thread Richard Henderson
On 06/15/2011 02:47 AM, Georg-Johann Lay wrote: > +#if defined (L_loop_ffsqi2) > +;; Helper for ffshi2, ffssi2 > +;; r25:r24 = r26 + zero_extend16 (ffs8(r24)) > +;; r24 must be != 0 > +;; clobbers: r26 > +DEFUN __loop_ffsqi2 Why does this function have "loop" in its name? The actual implementatio

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-16 Thread Georg-Johann Lay
Denis Chertykov schrieb: > 2011/6/15 Georg-Johann Lay : >> This is a patch that implements some libgcc functions in assembler. >> The functions are used only very seldom but if, they lead to an >> unpleasant waste of resource. For example, some SF functions >> eventually lead to __clz_tab being dra

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-16 Thread Ian Lance Taylor
Georg-Johann Lay writes: > gcc/ > PR target/49313 > PR target/29524 > > * longlong.h: Add AVR support: > (count_leading_zeros): New macro. > (count_trailing_zeros): New macro. > (COUNT_LEADING_ZEROS_0): New macro. > > * config/avr/t-avr (LIB

[Patch, AVR]: PR49313, fix PR29524

2011-06-15 Thread Georg-Johann Lay
This is a patch that implements some libgcc functions in assembler. The functions are used only very seldom but if, they lead to an unpleasant waste of resource. For example, some SF functions eventually lead to __clz_tab being dragged in (PR29524). This patch avoids that by straight forward assem

[Patch, AVR]: PR49313, fix PR29524

2011-06-15 Thread Georg-Johann Lay
[Resent as original appears to got lost in the net] http://gcc.gnu.org/ml/gcc-patches/2011-06/msg01141.html This is a patch that implements some libgcc functions in assembler. The functions are used only very seldom but if, they lead to an unpleasant waste of resource. For example, some SF functi

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-15 Thread Georg-Johann Lay
nal mail could not yet be delivered to gcc-patches; I got a message reading something like (backtranslated to en): Subject: [Patch, AVR]: PR49313, fix PR29524 Sender: a...@gjlay.de Attention: Mail could not be delivered since 1 hour. Following receiver is affected: gcc-patches@gcc.gn

Re: [Patch, AVR]: PR49313, fix PR29524

2011-06-15 Thread Denis Chertykov
2011/6/15 Georg-Johann Lay : > This is a patch that implements some libgcc functions in assembler. > The functions are used only very seldom but if, they lead to an > unpleasant waste of resource. For example, some SF functions > eventually lead to __clz_tab being dragged in (PR29524). > > This pat