public inbox for libc-ports@sourceware.org
 help / color / mirror / Atom feed
From: Will Newton <will.newton@linaro.org>
To: Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com>
Cc: Richard Henderson <rth@twiddle.net>,
	libc-ports@sourceware.org, 	Patch Tracking <patches@linaro.org>
Subject: Re: [PATCH v2] ARM: Add Cortex-A15 optimized NEON and VFP memcpy routines, with IFUNC.
Date: Mon, 22 Apr 2013 08:27:00 -0000	[thread overview]
Message-ID: <CANu=DmjzXBQcFOZ13XM=PNM_=sLJoo_FdoxEKWZj4BJkKZCWMw@mail.gmail.com> (raw)
In-Reply-To: <CAAHN_R1_6g69+V6K0-jXMUGCB+Y=R+VtiFPR4GhO4a=f22iUZQ@mail.gmail.com>

On 18 April 2013 18:58, Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com> wrote:

Hi Siddesh,

> On 18 April 2013 13:55, Siddhesh Poyarekar <siddhesh.poyarekar@gmail.com> wrote:
>> On 18 April 2013 13:24, Will Newton <will.newton@linaro.org> wrote:
>>> Thanks for the offer, I don't have any armv6 hardware to test with.
>>> The easiest way to test is probably using the cortex-strings package
>>> (as the patch I posted is for armv7).
>>>
>>> https://launchpad.net/cortex-strings
>>>
>>> "try-this -t memcpy" will benchmark the code I submitted, "try-glibc
>>> -t memcpy" will benchmark the current glibc code.
>>
>> OK, I'll try to do this tonight (i.e. ~8 hours from now) since the
>> board is at home and I'm not.  I assume you want 'current glibc code'
>> to be master?  The distribution version is 2.17 IIRC or at worst 2.16.
>
> `try-this` crashes with a SIGILL:
>
> Program received signal SIGILL, Illegal instruction.
> memset () at src/linaro-a9/memset.S:64
> 64              cbz     r2, 10f         @ Exit if 0 length
> (gdb) bt
>
> I don't know much arm assembly, but digging around a bit I found that
> cbz is implemented on armv6T2 or later and hence not available on my
> board.  If you're interested in making this work on armv6 then I can
> give this a shot - I've been meaning to start playing with arm
> assembly anyway.

Thanks for trying this.

All the routines in cortex-strings are intended for armv7 (i.e.
Cortex-A cores) and it looks like the memset code is being run as a
side effect of the test. It might be quite simple to work around or it
could involve lots of work! I guess you could always drop in a known
armv6 compatible memset e.g. the glibc one.

--
Will Newton
Toolchain Working Group, Linaro

  reply	other threads:[~2013-04-22  8:27 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-16  9:25 Will Newton
2013-04-17 15:40 ` Richard Henderson
2013-04-17 15:53   ` Will Newton
2013-04-18  7:42     ` Richard Henderson
2013-04-18  7:47       ` Siddhesh Poyarekar
2013-04-18  7:54         ` Will Newton
2013-04-18  8:26           ` Siddhesh Poyarekar
2013-04-18  8:38             ` Will Newton
2013-04-18 17:58             ` Siddhesh Poyarekar
2013-04-22  8:27               ` Will Newton [this message]
2013-04-17 17:51 ` Carlos O'Donell
2013-04-18  8:01   ` Will Newton
2013-04-19 21:47 ` Joseph S. Myers
2013-04-22  8:32   ` Will Newton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CANu=DmjzXBQcFOZ13XM=PNM_=sLJoo_FdoxEKWZj4BJkKZCWMw@mail.gmail.com' \
    --to=will.newton@linaro.org \
    --cc=libc-ports@sourceware.org \
    --cc=patches@linaro.org \
    --cc=rth@twiddle.net \
    --cc=siddhesh.poyarekar@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).