Incidents in ARM-NEON-Intrinsics
Julian Brown
julian@codesourcery.com
Wed Oct 5 11:11:00 GMT 2011
On Wed, 05 Oct 2011 10:37:22 +0900
shiotani@rd.ten.fujitsu.com (塩谷晶彦) wrote:
> Hi, Maintainer,
>
> I found some incidents in
> http://gcc.gnu.org/onlinedocs/gcc/ARM-NEON-Intrinsics.html#ARM-NEON-Intrinsics
>
> Please check the following:
>
> |6.54.3.8 Comparison (less-than-or-equal-to)
> |
> | uint32x2_t vcle_u32 (uint32x2_t, uint32x2_t)
> | Form of expected instruction(s): vcge.u32 d0, d0, d0
> (snip)
> | uint32x4_t vcleq_f32 (float32x4_t, float32x4_t)
> | Form of expected instruction(s): vcge.f32 q0, q0, q0
>
> in above "vcge"s may be "vcle" or "vcgt".
This is deliberate I think: the register/register forms of vcle, vclt,
vacle etc. are pseudo-instructions, and assemble to vcge, vcgt, etc.
with the operands reversed (a <= b === b >= a).
Are you seeing incorrect code being generated?
Julian
More information about the Gcc
mailing list