diff mbox

[AArch64] Fix for PR62040

Message ID CAEe8uEBFi-1L+d4kd9e=i72GrkxJW3X=JTy3sq4oJsUdkAsL0Q@mail.gmail.com
State New
Headers show

Commit Message

Carrot Wei Sept. 4, 2014, 5:34 a.m. UTC
Changed the coding style.


2014-09-03  Guozhi Wei  <carrot@google.com>

        PR target/62040
        * gcc.target/aarch64/pr62040.c: New test.




On Wed, Sep 3, 2014 at 6:04 AM, Marcus Shawcroft
<marcus.shawcroft@gmail.com> wrote:
> On 20 August 2014 20:51, Carrot Wei <carrot@google.com> wrote:
>> Good suggestion. Add the testcase.
>>
>> thanks
>> Guozhi Wei
>>
>> 2014-08-20  Guozhi Wei  <carrot@google.com>
>>
>>         PR target/62040
>>         * gcc.target/aarch64/pr62040.c: New test.
>>
>> Index: pr62040.c
>> ===================================================================
>> --- pr62040.c (revision 0)
>> +++ pr62040.c (revision 0)
>> @@ -0,0 +1,19 @@
>> +/* { dg-do compile } */
>> +/* { dg-options "-g -Os" } */
>> +
>> +#include "arm_neon.h"
>> +
>> +extern bar(int32x4_t);
>> +
>> +void foo() {
>> +  int32x4x4_t rows;
>> +  uint64x2x2_t row01;
>> +
>> +  row01.val[0] = vreinterpretq_u64_s32(rows.val[0]);
>> +  row01.val[1] = vreinterpretq_u64_s32(rows.val[1]);
>> +  uint64x1_t row3l = vget_low_u64(row01.val[0]);
>> +  row01.val[0] = vcombine_u64(vget_low_u64(row01.val[1]), row3l);
>> +  int32x4_t xxx = vreinterpretq_s32_u64(row01.val[0]);
>> +  int32x4_t out = vtrn1q_s32 (xxx, xxx);
>> +  bar(out);
>> +}
>
>
> GNU coding style please.
>
> /Marcus

Comments

Marcus Shawcroft Sept. 4, 2014, 1:31 p.m. UTC | #1
On 4 September 2014 06:34, Carrot Wei <carrot@google.com> wrote:
> Changed the coding style.
>
>
> 2014-09-03  Guozhi Wei  <carrot@google.com>
>
>         PR target/62040
>         * gcc.target/aarch64/pr62040.c: New test.

Thank you. OK /Marcus
diff mbox

Patch

Index: pr62040.c
===================================================================
--- pr62040.c (revision 0)
+++ pr62040.c (revision 0)
@@ -0,0 +1,21 @@ 
+/* { dg-do compile } */
+/* { dg-options "-g -Os" } */
+
+#include "arm_neon.h"
+
+extern void bar (int32x4_t);
+
+void
+foo ()
+{
+  int32x4x4_t rows;
+  uint64x2x2_t row01;
+
+  row01.val[0] = vreinterpretq_u64_s32 (rows.val[0]);
+  row01.val[1] = vreinterpretq_u64_s32 (rows.val[1]);
+  uint64x1_t row3l = vget_low_u64 (row01.val[0]);
+  row01.val[0] = vcombine_u64 (vget_low_u64 (row01.val[1]), row3l);
+  int32x4_t xxx = vreinterpretq_s32_u64 (row01.val[0]);
+  int32x4_t out = vtrn1q_s32 (xxx, xxx);
+  bar (out);
+}