On 10/20/2016 12:10 AM, kugan wrote:
Hi,


On 20/10/16 02:54, Andrew Pinski wrote:
On Wed, Oct 19, 2016 at 1:01 AM, Christophe Lyon
<christophe.l...@linaro.org> wrote:
On 18 October 2016 at 09:34, Richard Biener <rguent...@suse.de> wrote:
On Mon, 17 Oct 2016, Richard Biener wrote:


This refactors propagation vs. substitution and handles condition
simplification properly as well as passing a known taken edge down
to the DOM walker (avoiding useless work and properly handling PHIs).

If we do all the work it's stupid to not fold away dead code...

Bootstrap and regtest pending on x86_64-unknown-linux-gnu.

The following is what I applied, also fixing a spelling mistake noticed
by Bernhard.

Hi Richard,

This patch is causing regressions on aarch64. These tests now fail:

So I looked into it and found the testcase themselves need to be changed.
The functions are marked as noinline but not noclone.
For an example:
static void __attribute__((noinline))
check_args_8 (int a0, int a1, int a2, int a3, int a4, int a5, int a6,
int a7,
              int a8)
....


Indeed. In test12 and so on, arguments for check_args_8/check_args_24 is
now becoming constant which enables ipa-cp to create specialized clones.
Though this is good, in order to preserve the tested functionality, we
need to add noclone attribute. Here is a patch to do this.

Regression tested on aatch64-linux-gnu. Is this OK for trunk?

Thanks,
Kugan

gcc/testsuite/ChangeLog:

2016-10-20  Kugan Vivekanandarajah  <kuga...@linaro.org>

    * gcc.target/aarch64/test_frame_common.h: Add noclone attribute
    such that cloned verions of tested functions are not created.
OK.
jeff

Reply via email to