Message ID | CY1PR1201MB10984E2DFC87F42C9227FE618FBF0@CY1PR1201MB1098.namprd12.prod.outlook.com |
---|---|
State | New |
Headers | show |
On Sat, Mar 5, 2016 at 1:13 PM, Kumar, Venkataramanan <Venkataramanan.Kumar@amd.com> wrote: > Hi Maintainers, > > The below patch changes multiplication cost for -march=znver1 target. > GCC Bootstrap tested with BOOT_CFLAGS="-O2 -g -march=znver1". > > (---Snip---) > diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c > index d8a2909..b5dde5e 100644 > --- a/gcc/config/i386/i386.c > +++ b/gcc/config/i386/i386.c > @@ -1350,11 +1350,11 @@ struct processor_costs znver1_cost = { > COSTS_N_INSNS (1), /* cost of a lea instruction. */ > COSTS_N_INSNS (1), /* variable shift costs. */ > COSTS_N_INSNS (1), /* constant shift costs. */ > - {COSTS_N_INSNS (4), /* cost of starting multiply for QI. */ > - COSTS_N_INSNS (4), /* HI. */ > - COSTS_N_INSNS (4), /* SI. */ > - COSTS_N_INSNS (6), /* DI. */ > - COSTS_N_INSNS (6)}, /* other. */ > + {COSTS_N_INSNS (3), /* cost of starting multiply for QI. */ > + COSTS_N_INSNS (3), /* HI. */ > + COSTS_N_INSNS (3), /* SI. */ > + COSTS_N_INSNS (4), /* DI. */ > + COSTS_N_INSNS (4)}, /* other. */ > 0, /* cost of multiply per each bit > set. */ > {COSTS_N_INSNS (19), /* cost of a divide/mod for QI. */ > (---Snip---) > > 2016-03-05 Venkataramanan Kumar <Venkataramanan.kumar@amd.com> > > * config/i386/i386.c (znver1_cost): Fix Multiply cost. > > Ok for trunk? OK as a trivial change. Uros.
Hi Uros, > -----Original Message----- > From: Uros Bizjak [mailto:ubizjak@gmail.com] > Sent: Saturday, March 05, 2016 9:06 PM > To: Kumar, Venkataramanan > Cc: gcc-patches@gcc.gnu.org; Richard Beiner (richard.guenther@gmail.com) > Subject: Re: [Patch X86_64]: Fix multiplication cost for -march=znver1. > > On Sat, Mar 5, 2016 at 1:13 PM, Kumar, Venkataramanan > <Venkataramanan.Kumar@amd.com> wrote: > > Hi Maintainers, > > > > The below patch changes multiplication cost for -march=znver1 target. > > GCC Bootstrap tested with BOOT_CFLAGS="-O2 -g -march=znver1". > > > > (---Snip---) > > diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index > > d8a2909..b5dde5e 100644 > > --- a/gcc/config/i386/i386.c > > +++ b/gcc/config/i386/i386.c > > @@ -1350,11 +1350,11 @@ struct processor_costs znver1_cost = { > > COSTS_N_INSNS (1), /* cost of a lea instruction. */ > > COSTS_N_INSNS (1), /* variable shift costs. */ > > COSTS_N_INSNS (1), /* constant shift costs. */ > > - {COSTS_N_INSNS (4), /* cost of starting multiply for QI. */ > > - COSTS_N_INSNS (4), /* HI. */ > > - COSTS_N_INSNS (4), /* SI. */ > > - COSTS_N_INSNS (6), /* DI. */ > > - COSTS_N_INSNS (6)}, /* other. */ > > + {COSTS_N_INSNS (3), /* cost of starting multiply for QI. */ > > + COSTS_N_INSNS (3), /* HI. */ > > + COSTS_N_INSNS (3), /* SI. */ > > + COSTS_N_INSNS (4), /* DI. */ > > + COSTS_N_INSNS (4)}, /* other. */ > > 0, /* cost of multiply per each bit > > set. */ > > {COSTS_N_INSNS (19), /* cost of a divide/mod for QI. */ > > (---Snip---) > > > > 2016-03-05 Venkataramanan Kumar > <Venkataramanan.kumar@amd.com> > > > > * config/i386/i386.c (znver1_cost): Fix Multiply cost. > > > > Ok for trunk? > > OK as a trivial change. Thank you. I up-streamed the patch. Ref: https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=234008 > > Uros.
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index d8a2909..b5dde5e 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -1350,11 +1350,11 @@ struct processor_costs znver1_cost = { COSTS_N_INSNS (1), /* cost of a lea instruction. */ COSTS_N_INSNS (1), /* variable shift costs. */ COSTS_N_INSNS (1), /* constant shift costs. */ - {COSTS_N_INSNS (4), /* cost of starting multiply for QI. */ - COSTS_N_INSNS (4), /* HI. */ - COSTS_N_INSNS (4), /* SI. */ - COSTS_N_INSNS (6), /* DI. */ - COSTS_N_INSNS (6)}, /* other. */ + {COSTS_N_INSNS (3), /* cost of starting multiply for QI. */ + COSTS_N_INSNS (3), /* HI. */ + COSTS_N_INSNS (3), /* SI. */ + COSTS_N_INSNS (4), /* DI. */ + COSTS_N_INSNS (4)}, /* other. */ 0, /* cost of multiply per each bit set. */ {COSTS_N_INSNS (19), /* cost of a divide/mod for QI. */