From: Paul Brook <paul@codesourcery.com>
To: Julian Brown <julian@codesourcery.com>
Cc: binutils@sources.redhat.com,
Richard Earnshaw <Richard.Earnshaw@arm.com>
Subject: Re: [PATCH] ARM Neon instruction set support
Date: Sat, 01 Apr 2006 02:49:00 -0000 [thread overview]
Message-ID: <200604010349.23269.paul@codesourcery.com> (raw)
In-Reply-To: <442DD9E0.1090408@codesourcery.com>
On Saturday 01 April 2006 02:39, Julian Brown wrote:
> Hi,
>
> This patch provides support for ARM's new Advanced SIMD (Neon)
> instruction set, and version 3 of the VFP instruction set. Code using
> Neon instructions can be both assembled and disassembled. The full range
> of SIMD data types is available, and should be correctly type-checked by
> the assembler.
As-is the patch looks generally ok to me, a couple of relatively minor points
below. Ok for the csl branch once those are resolved.
ARM have also defined all the existing VFP instructions in terms of the vector
mnemonics. eg. "faddd d0, d0, d0" becomes "vadd.f64 d0, d0, d0).
We probably want to consider the implications of this before applying to
mainline. Hopefully this will be an incremental change that can be done
without rewriting everything, but it's best to check :-)
> + /* Undo polymorphism for Neon D and Q registers. */
> + if (reg && type == REG_TYPE_NDQ)
> + type = (reg->type == REG_TYPE_NQ || reg->type == REG_TYPE_VFD)
> + ? reg->type : type;
Probably clearer as a single if:
if (reg && type == REG_TYPE_NDQ
&&(reg->type == REG_TYPE_NQ || reg->type == REG_TYPE_VFD))
type = reg->type;
> ! /* FIXME: Check if cortex-a8 supports these things! */
> ! {"cortex-a8", ARM_ARCH_V7A, ARM_FEATURE(0, FPU_VFP_V3
Yes it does. You can remove the FIXME.
> + {"vfp3", FPU_ARCH_VFP_V3},
You also need to add some way of enabling NEON. I'm not sure if it's best to
have this as an independent architecture extension (like iWMMXt) or just a
different type of FPU. Probably the latter.
You also need to set the appropriate EABI build attributes to when NEON and
VFPv3 instructions are used.
Paul
next prev parent reply other threads:[~2006-04-01 2:49 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-01 1:40 Julian Brown
2006-04-01 2:49 ` Paul Brook [this message]
2006-04-02 23:30 ` Julian Brown
2006-04-19 16:38 ` Julian Brown
2006-04-25 19:12 ` Nick Clifton
2006-04-25 19:20 ` [PATCH] ARM Neon programmers syntax Nick Clifton
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=200604010349.23269.paul@codesourcery.com \
--to=paul@codesourcery.com \
--cc=Richard.Earnshaw@arm.com \
--cc=binutils@sources.redhat.com \
--cc=julian@codesourcery.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).