FW: [PATCH] Fix big-endian NEON intrinsics

James Molloy james.molloy at arm.com
Wed Jun 18 00:26:14 PDT 2014


Forwarding to cfe-commits as I accidentally added the wrong mail list.

 

From: James Molloy [mailto:james.molloy at arm.com] 
Sent: 17 June 2014 16:25
To: Tim Northover; llvm-commits
Subject: [PATCH] Fix big-endian NEON intrinsics

 

Hi Tim,

 

This is the final big-endian patch in my queue. With it, we pass the emperor
testcases that I've run.

 

The NEON intrinsics in arm_neon.h are designed to work on vectors "as-if"
loaded by (V)LDR. We load vectors "as-if" (V)LD1, so the intrinsics are
currently incorrect.

 

This patch adds big-endian versions of the intrinsics that does the "obvious
but dumb" thing of reversing all vector inputs and all vector outputs. This
will produce extra REVs, but we trust the optimizer to remove them.

 

Could you please review? There's a documentation patch for BigEndianNeon.rst
on the way too.

 

Cheers,

 

James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140618/daee9a2a/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-ARM-BE-Generate-correct-NEON-intrinsics-for-big-endi.patch
Type: application/octet-stream
Size: 8882 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140618/daee9a2a/attachment.obj>


More information about the llvm-commits mailing list