Hi Segher, on 2019/11/8 上午6:36, Segher Boessenkool wrote: > On Thu, Nov 07, 2019 at 11:22:12AM +0800, Kewen.Lin wrote: >> One updated patch to enable it everywhere attached. > >> 2019-11-07 Kewen Lin <li...@gcc.gnu.org> >> >> * config/rs6000/rs6000.c (rs6000_builtin_vectorization_cost): Make >> scalar_load, vector_load, unaligned_load and vector_gather_load cost >> more to conform hardware latency and insn cost settings. > >> case unaligned_load: >> case vector_gather_load: > > ... > >> - /* Word aligned. */ >> - return 22; > >> + /* Word aligned. */ >> + return 44; > > I don't think it should go up from 22 all the way to 44 (not all insns here > are loads). But exact cost doesn't really matter. Make it 30 perhaps? >
Good point, I'll try the cost 33 (the avg. of 22 and 44). > 44 (as well as 22) are awfully precise numbers for a very imprecise cost > like this ;-) Yep! ;-) > > With either cost, whatever seems reasonable to you and works well in your > tests: approved for trunk. Thanks! Thanks! I'll kick off two regression testing on both BE and LE with new cost, then commit it if everything goes well. BR, Kewen