Message ID | 78E5177D-1788-4F87-9A99-70C29E3BC3D7@sandoe-acoustics.co.uk |
---|---|
State | New |
Headers | show |
On Mon, Nov 14, 2011 at 12:40 PM, Iain Sandoe <developer@sandoe-acoustics.co.uk> wrote: > > On 14 Nov 2011, at 20:36, H.J. Lu wrote: > >> 2011/11/14 Jan Hubicka <hubicka@ucw.cz>: >>>> >>>> On Mon, Nov 14, 2011 at 9:03 AM, Jan Hubicka <hubicka@ucw.cz> wrote: >>>>> >>>>> Hi, >>>>> this is hopefully final variant of patch. The epilogue code was broken >>>>> in some >>>>> scenarios for memset, but should work safely now. I also fixed the >>>>> tables for >>>>> core/buldozer/amdfam10 chips. >>>>> >>>>> But before it can be comitted, we need to reoslve copyright assignment >>>>> issues. >>>>> You don't seem to be liested as having copyright assignment, does you >>>>> company >>>>> have one? Otherwise, please try to get one soon. >>>>> >>>>> Honza >>>>> >>>>> 2011-11-14 Zolotukhin Michael <michael.v.zolotukhin@gmail.com> >>>>> Jan Hubicka <jh@suse.cz> >>>>> >>>> >>>> Zolotukhin Michael works for Intel and has copyright assignment with >>>> FSF. >>> >>> Thank you. I went ahead and comitted the patch then. >>> >> >> GCC failed to bootstrap: >> >> ../../src-trunk/libiberty/sort.c:100:14: internal compiler error: in >> decide_alg, at config/i386/i386.c:22094 >> Please submit a full bug report, >> with preprocessed source if appropriate. >> See <http://gcc.gnu.org/bugs.html> for instructions. >> make[6]: *** [sort.o] Error 1 > > > Assuming that the target is a core processor: > > I'm testing a patch from Honza for this - which he has asked to be checked > in if it works out OK. > > just a pasto... > > > > > Index: i386.c > =================================================================== > --- i386.c (revision 181360) > +++ i386.c (working copy) > @@ -1877,10 +1877,10 @@ struct processor_costs core_cost = { > {libcall, {{16, loop}, {24, unrolled_loop}, {1024, rep_prefix_8_byte}, > {-1, libcall}}}}}, > > /* stringop_algs for memset. */ > - {{{libcall, {{256, rep_prefix_4_byte}}}, /* Known alignment. */ > - {libcall, {{256, rep_prefix_8_byte}}}}, > - {{libcall, {{256, rep_prefix_4_byte}}}, /* Unknown alignment. */ > - {libcall, {{256, rep_prefix_8_byte}}}}}, > + {{{libcall, {{256, rep_prefix_4_byte}, {-1 libcall}}}, /* Known > alignment. */ > + {libcall, {{256, rep_prefix_8_byte}, {-1 libcall}}}}, > + {{libcall, {{256, rep_prefix_4_byte}, {-1 libcall}}}, /* Unknown > alignment. */ > + {libcall, {{256, rep_prefix_8_byte}, {-1 libcall}}}}}, > 1, /* scalar_stmt_cost. */ > 1, /* scalar load_cost. */ > 1, /* scalar_store_cost. */ > It looks reasonable.
Index: i386.c =================================================================== --- i386.c (revision 181360) +++ i386.c (working copy) @@ -1877,10 +1877,10 @@ struct processor_costs core_cost = { {libcall, {{16, loop}, {24, unrolled_loop}, {1024, rep_prefix_8_byte}, {-1, libcall}}}}}, /* stringop_algs for memset. */ - {{{libcall, {{256, rep_prefix_4_byte}}}, /* Known alignment. */ - {libcall, {{256, rep_prefix_8_byte}}}}, - {{libcall, {{256, rep_prefix_4_byte}}}, /* Unknown alignment. */ - {libcall, {{256, rep_prefix_8_byte}}}}}, + {{{libcall, {{256, rep_prefix_4_byte}, {-1 libcall}}}, /* Known alignment. */ + {libcall, {{256, rep_prefix_8_byte}, {-1 libcall}}}}, + {{libcall, {{256, rep_prefix_4_byte}, {-1 libcall}}}, /* Unknown alignment. */ + {libcall, {{256, rep_prefix_8_byte}, {-1 libcall}}}}},