From: "Alex Bennée" <alex.bennee@linaro.org>
To: Peter Maydell <peter.maydell@linaro.org>
Cc: Junaid Shuja <junaidshuja@siswa.um.edu.my>,
QEMU Developers <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] ARM NEON function call tracing
Date: Wed, 11 Nov 2015 11:06:10 +0000 [thread overview]
Message-ID: <87fv0caj8d.fsf@linaro.org> (raw)
In-Reply-To: <CAFEAcA_u4JvKnt8wW1MyrCuLEDmMQ8sz0Hef1gWukVGtJQ73_A@mail.gmail.com>
Peter Maydell <peter.maydell@linaro.org> writes:
> On 11 November 2015 at 07:51, Junaid Shuja <junaidshuja@siswa.um.edu.my> wrote:
>> Hi,
>> I am working on ARM/NEON instructions. I want to know which neon helper
>> function corresponds to the neon instructions. As a test case, I have a
>> source file with loads of vadd.i32 instructions. I want to trace which neon
>> helper functions is called. I used a very crude approach: printf in
>> neon_add_u16 funtion and compiled source again. But no printf showed on
>> program execution. I need help regarding tracing of neon helpers.
>
> Integer addition is a simple operation so we can do it directly
> in the generated code; we don't need a helper for it, even as a
> Neon instruction. Generally we only have helper functions for
> operations that are too complicated to do directly inline.
> So there isn't a simple "one neon instruction, one helper function"
> mapping. Where we do have a helper function, the helper
> may work on one "lane" of Neon data (meaning it gets called
> more than once for each instruction) or it may work on several
> lanes at once.
>
> To find out how we handle a particular Neon instruction, you need
> to look at disas_neon_data_insn and see what it does with the
> insn (it may be easiest to do this by putting a breakpoint on
> it and stepping through with a debugger). Where this code calls
> gen_helper_* functions, it is emitting generated code which will
> later call the relevant helper at runtime.
Random musing: I wonder how easy it would be to emit the helper function
name in the out_asm dump?
>
> thanks
> -- PMM
--
Alex Bennée
prev parent reply other threads:[~2015-11-11 11:06 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-11-11 7:51 [Qemu-devel] ARM NEON function call tracing Junaid Shuja
2015-11-11 8:59 ` Peter Maydell
2015-11-11 11:06 ` Alex Bennée [this message]
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=87fv0caj8d.fsf@linaro.org \
--to=alex.bennee@linaro.org \
--cc=junaidshuja@siswa.um.edu.my \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.