[PATCH, SH] Add support for inlined builtin-strcmp (2/2)
Oleg Endo
oleg.endo@t-online.de
Sat Oct 19 11:03:00 GMT 2013
On Fri, 2013-10-18 at 09:59 +0200, Christian Bruel wrote:
> On 10/18/2013 01:05 AM, Oleg Endo wrote:
> > I was wondering, in file sh-mem.c, the new function
> > 'sh4_expand_cmpstr' ... why is it SH4-something? It's a bit confusing,
> > since cmp/str has been around since ever (i.e. since SH1). Maybe just
> > rename it to 'sh_expand_cmpstr' instead?
>
> Just historical. (SH4* are our primary SH platforms). The code is
> enabled/tested for all SH1 of course, I will rename. Thanks .
>
> > Maybe just
> > rename it to 'sh_expand_cmpstr' instead? The function always returns
> > 'true', so maybe just make it return 'void'?
>
> yes, it's for genericity as I plan to reuse/specialize the code based on
> the count parameter for strncmp to be contributed next.
I already assumed so :)
> >
> > Also, in the expander ...
> >
> > + [(set (match_operand:SI 0 "register_operand" "")
> > + (compare:SI (match_operand:BLK 1 "memory_operand" "")
> >
> > ... no need to use empty "" constraints
>
> OK, thanks
Could you also please remove the quotes around the preparation block:
"
{
if (! optimize_insn_for_size_p () && sh4_expand_cmpstr(operands))
DONE;
else FAIL;
}")
I've attached two test cases, tested with
make -k check-gcc RUNTESTFLAGS="sh.exp=strcmp* --target_board=sh-sim
\{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}"
Could you please include them?
Cheers,
Oleg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: strcmp_test_1.patch
Type: text/x-patch
Size: 1289 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20131019/ea4fd7a4/attachment.bin>
More information about the Gcc-patches
mailing list