On 10 January 2018 at 15:44, Jakub Jelinek <ja...@redhat.com> wrote: > On Mon, Oct 23, 2017 at 02:30:24PM +0200, Christophe Lyon wrote: >> After Jakub's suggestion in PR82120 and PR81184, the attached patch >> adds the -mbranch-cost option to the ARM target. My understanding >> is that it's intended to be used internally for testing and does not >> require user-facing documentation. >> >> I have updated a few tests, validation on aarch64 & arm targets shows >> no regression, >> and a few improvements when targeting cortex-a5 or cortex-m3: >> gcc.dg/tree-ssa/reassoc-3[3456].c now pass. >> >> That being said, I'm not sure about the other targets for which I >> changed the condition, >> and I am also concerned by the fact that it has no impact on >> gcc.dg/pr21643.c and gcc.dg/tree-ssa/phi-opt-11.c (PR81184). >> >> Should I restrict my patch to the only tests where it has an impact >> (gcc.dg/tree-ssa/reassoc-3[3456].c) ? > > Let's change all and watch the effects on all targets in testresults, > we can fine tune later on. > OK, thanks
> Does pr21643.c really fail somewhere on arm*? Tried -mcpu=cortex-a5 > and don't see the failure in x86_64-linux -> armv7a-hardfloat-linux-gnueabi > cross. Yes, for me still fails on arm-none-linux-gnueabihf --with-cpu=cortex-a5 --with-fpu=vfpv3-d16-fp16 > >> gcc/ChangeLog: >> >> 2017-10-23 Christophe Lyon <christophe.l...@linaro.org> >> >> * config/arm/arm.opt (-mbranch-cost): New option. >> * config/arm/arm.h (BRANCH_COST): Take arm_branch_cost into >> account. >> >> gcc/testsuite/ChangeLog: >> >> 2017-10-23 Christophe Lyon <christophe.l...@linaro.org> >> >> * lib/target-supports.exp (check_effective_target_branch_cost): >> New function. >> * gcc.dg/builtin-bswap-7.c: Use branch_cost effective target. >> * gcc.dg/pr21643.c: Likewise. >> * gcc.dg/pr46309.c: Likewise. >> * gcc.dg/tree-ssa/phi-opt-11.c: Likewise. >> * gcc.dg/tree-ssa/phi-opt-2.c: Likewise. >> * gcc.dg/tree-ssa/reassoc-32.c: Likewise. >> * gcc.dg/tree-ssa/reassoc-33.c: Likewise. >> * gcc.dg/tree-ssa/reassoc-34.c: Likewise. >> * gcc.dg/tree-ssa/reassoc-35.c: Likewise. >> * gcc.dg/tree-ssa/reassoc-36.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-13.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-1.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-2.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-3.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-4.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-5.c: Likewise. >> * gcc.dg/tree-ssa/ssa-ifcombine-ccmp-6.c: Likewise. > > Ok for trunk. > > Note, unreviewed patches should be pinged from time to time. Sorry, I thought the patch was too crappy ;-) Thanks, Christophe > > Jakub