I didn't drop the test case and i have tested that case on my 
manchine(aarch64-linux) with qemu.  
I am sorry I forgot to add the testcase in the last patch.
A new patch was added to the accessory.
I am a new guy to the community and I will try my best to accord with the norm 
of the community next time.
Sorry for my careless.

Many thanks
/Xiangyu Wei
> -----Original Message-----
> From: Marcus Shawcroft [mailto:marcus.shawcr...@gmail.com]
> Sent: Thursday, June 11, 2015 5:25 PM
> To: weixiangyu
> Cc: James Greenhalgh; gcc-patches@gcc.gnu.org; Marcus Shawcroft; Richard
> Earnshaw
> Subject: Re: backport the fixes of PR target/64011 and /61749 to 4.9 gcc
> 
> On 10 June 2015 at 03:46, weixiangyu <weixian...@huawei.com> wrote:
> > Updated patches were attached. Rebased on the latest 4.9 branch.
> > Tested on aarch64-linux (big-endian and little-endian) with qemu.
> > OK for 4.9?
> 
> 
> Hi,
> 
> > And the second one:
> 
> The original r215046 mainline commit contains a test case that is omitted from
> the proposed back port, can you elaborate why you have chosen to drop the
> test case?
> 
> The usual convention on this list is to post one patch per email such that 
> each
> email thread discusses just one patch.
> 
> Thanks
> /Marcus
> 
> 
> > Index: gcc/ChangeLog
> >
> ================================================================
> ===
> > --- gcc/ChangeLog       (revision 223867)
> > +++ gcc/ChangeLog       (working copy)
> > @@ -1,3 +1,28 @@
> > +2015-06-09  Xiangyu Wei  <weixian...@huawei.com>
> > +
> > +       Backport from mainline r215046:
> > +       2014-09-09  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>
> > +       PR target/61749
> > +       *  config/aarch64/aarch64-builtins.c
> (aarch64_types_quadop_qualifiers):
> > +       Use qualifier_immediate for last operand.  Rename to...
> > +       (aarch64_types_ternop_lane_qualifiers): ... This.
> > +       (TYPES_QUADOP): Rename to...
> > +       (TYPES_TERNOP_LANE): ... This.
> > +       (aarch64_simd_expand_args): Return const0_rtx when
> encountering user
> > +       error.  Change return of 0 to return of NULL_RTX.
> > +       (aarch64_crc32_expand_builtin): Likewise.
> > +       (aarch64_expand_builtin): Return NULL_RTX instead of 0.
> > +       ICE when expanding unknown builtin.
> > +       * config/aarch64/aarch64-simd-builtins.def (sqdmlal_lane): Use
> > +       TERNOP_LANE qualifiers.
> > +       (sqdmlsl_lane): Likewise.
> > +       (sqdmlal_laneq): Likewise.
> > +       (sqdmlsl_laneq): Likewise.
> > +       (sqdmlal2_lane): Likewise.
> > +       (sqdmlsl2_lane): Likewise.
> > +       (sqdmlal2_laneq): Likewise.
> > +       (sqdmlsl2_laneq): Likewise.
> > +       * gcc.target/aarch64/vqdml_lane_intrinsics-bad_1.c: New test.
> > Index: gcc/config/aarch64/aarch64-builtins.c
> >
> ================================================================
> ===
> > --- gcc/config/aarch64/aarch64-builtins.c       (revision 223867)
> > +++ gcc/config/aarch64/aarch64-builtins.c       (working copy)
> > @@ -172,10 +172,10 @@
> > aarch64_types_ternopu_qualifiers[SIMD_MAX_BUILTIN_
> >  #define TYPES_TERNOPU (aarch64_types_ternopu_qualifiers)
> >
> >  static enum aarch64_type_qualifiers
> > -aarch64_types_quadop_qualifiers[SIMD_MAX_BUILTIN_ARGS]
> > +aarch64_types_ternop_lane_qualifiers[SIMD_MAX_BUILTIN_ARGS]
> >    = { qualifier_none, qualifier_none, qualifier_none,
> > -      qualifier_none, qualifier_none };
> > -#define TYPES_QUADOP (aarch64_types_quadop_qualifiers)
> > +      qualifier_none, qualifier_immediate }; #define
> > +TYPES_TERNOP_LANE (aarch64_types_ternop_lane_qualifiers)
> >
> >  static enum aarch64_type_qualifiers
> >  aarch64_types_getlane_qualifiers[SIMD_MAX_BUILTIN_ARGS]
> > @@ -818,8 +818,11 @@ aarch64_simd_expand_args (rtx target, int icode, i
> >             case SIMD_ARG_CONSTANT:
> >               if (!(*insn_data[icode].operand[argc +
> have_retval].predicate)
> >                   (op[argc], mode[argc]))
> > -               error_at (EXPR_LOCATION (exp), "incompatible type for
> argument %d, "
> > +               {
> > +                 error_at (EXPR_LOCATION (exp), "incompatible type
> for argument %d, "
> >                        "expected %<const int%>", argc + 1);
> > +                 return const0_rtx;
> > +               }
> >               break;
> >
> >             case SIMD_ARG_STOP:
> > @@ -886,7 +889,7 @@ aarch64_simd_expand_args (rtx target, int icode, i
> >        }
> >
> >    if (!pat)
> > -    return 0;
> > +    return NULL_RTX;
> >
> >> -----Original Message-----
> >> From: James Greenhalgh [mailto:james.greenha...@arm.com]
> >> Sent: Thursday, May 28, 2015 9:58 PM
> >> To: weixiangyu
> >> Cc: gcc-patches@gcc.gnu.org; Marcus Shawcroft; Richard Earnshaw;
> >> Yangfei
> >> (Felix)
> >> Subject: Re: backport the fixes of PR target/64011 and /61749 to 4.9
> >> gcc
> >>
> >> On Wed, May 27, 2015 at 03:49:24AM +0100, weixiangyu wrote:
> >> > Hi,
> >>
> >> Hi,
> >>
> >> > The first patch backports the fix of PR
> >> > target/64011(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64011) to
> >> > the 4.9 branch from trunk r219717,
> >>
> >> I can't approve this patch to be backported, so please do not commit
> >> it without approval from the appropriate maintainer.
> >>
> >> > and the second patch backports the fix of PR
> >> > target/61749(https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61749) to
> >> > the 4.9 branch from trunk r215046.
> >>
> >> This second patch is OK to backport to 4.9. It is a harmelss enough
> >> patch which fixes an ICE.
> >>
> >> Thanks,
> >> James
> >>
> >> > And the second one:
> >> >
> >>
> ================================================================
> >> ===
> >> > --- gcc/ChangeLog-HCC   (revision 130589)
> >> > +++ gcc/ChangeLog-HCC   (revision 130590)
> >> > @@ -1,3 +1,29 @@
> >> > +2015-05-26 y00166676  <felix.y...@huawei.com>
> >> > +
> >> > +       Backport from trunk r215046.
> >> > +       2014-09-09  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>
> >> > +
> >> > +       PR target/61749
> >> > +       * config/aarch64/aarch64-builtins.c
> >> (aarch64_types_quadop_qualifiers):
> >> > +       Use qualifier_immediate for last operand.  Rename to...
> >> > +       (aarch64_types_ternop_lane_qualifiers): ... This.
> >> > +       (TYPES_QUADOP): Rename to...
> >> > +       (TYPES_TERNOP_LANE): ... This.
> >> > +       (aarch64_simd_expand_args): Return const0_rtx when
> >> encountering user
> >> > +       error.  Change return of 0 to return of NULL_RTX.
> >> > +       (aarch64_crc32_expand_builtin): Likewise.
> >> > +       (aarch64_expand_builtin): Return NULL_RTX instead of 0.
> >> > +       ICE when expanding unknown builtin.
> >> > +       * config/aarch64/aarch64-simd-builtins.def (sqdmlal_lane): Use
> >> > +       TERNOP_LANE qualifiers.
> >> > +       (sqdmlsl_lane): Likewise.
> >> > +       (sqdmlal_laneq): Likewise.
> >> > +       (sqdmlsl_laneq): Likewise.
> >> > +       (sqdmlal2_lane): Likewise.
> >> > +       (sqdmlsl2_lane): Likewise.
> >> > +       (sqdmlal2_laneq): Likewise.
> >> > +       (sqdmlsl2_laneq): Likewise.
> >> > +
> >> > * gcc.target/aarch64/vqdml_lane_intrinsics-bad_1.c: New test.
> >> >
> >>
> >

Attachment: pr61749_v2.diff
Description: pr61749_v2.diff

Reply via email to