Re: IA64 control speculation of loads

2021-02-09 Thread Benoît De Dinechin
Sorry my previous answer was cut. The motivation for prepass global code motion is indeed that after register allocation, inter-block scheduling is even more restricted due to anti-dependencies, including those due to live-out on side exit branches. Global code motion is a key performance enabl

Re: IA64 control speculation of loads

2021-02-08 Thread Benoît De Dinechin
, "Andrey Belevantsev" Sent: Monday, February 8, 2021 3:44:08 PM Subject: Re: IA64 control speculation of loads On Mon, 8 Feb 2021, Benoît De Dinechin wrote: > Hello, > > Is there a way to activate control speculation of loads in GCC, starting with > the ia64 target? For a

Re: IA64 control speculation of loads

2021-02-08 Thread Alexander Monakov via Gcc
On Mon, 8 Feb 2021, Benoît De Dinechin wrote: > Hello, > > Is there a way to activate control speculation of loads in GCC, starting with > the ia64 target? For a loop as simple as on GCC 7.5, I could not get any: I think in that loop cost modeling in sel-sched estimates that load speculation

IA64 control speculation of loads

2021-02-08 Thread Benoît De Dinechin
Hello, Is there a way to activate control speculation of loads in GCC, starting with the ia64 target? For a loop as simple as on GCC 7.5, I could not get any: double list_sum(list_cell list) { double result = 0.0; while (list->next) { list = list->next; result += list->payload; if (!lis