On Sat, Jun 20, 2020 at 3:25 PM H.J. Lu <hjl.to...@gmail.com> wrote:
>
> On Sat, Jun 20, 2020 at 12:20 PM Yichao Yu <yyc1...@gmail.com> wrote:
> >
> > On Sat, Jun 20, 2020 at 3:12 PM H.J. Lu <hjl.to...@gmail.com> wrote:
> > >
> > > On Sat, Jun 20, 2020 at 11:37 AM Yichao Yu <yyc1...@gmail.com> wrote:
> > > >
> > > > On Sat, Jun 20, 2020 at 1:54 PM Yichao Yu <yyc1...@gmail.com> wrote:
> > > > >
> > > > > > > The current logic seems to be comparing the whole attribute tree 
> > > > > > > between the callee
> > > > > > > and caller (or at least the tree starting from the target 
> > > > > > > attribute).
> > > > > > > This is unnecessary and causes strange dependency of the 
> > > > > > > indirection
> > > > > > > elimination on unrelated properties like `noinline`(PR95780) and 
> > > > > > > `visibility`(PR95778).
> > > > > >
> > > > > > Does it fix PR95780 and PR95778?  Can you include testcases for 
> > > > > > them?
> > > >
> > > > OK so replacing
> > > > https://github.com/gcc-mirror/gcc/commit/b8ce8129a560f64f8b2855c4a3812b7c3c0ebf3f#diff-e2d535917af8555baad2e9c8749e96a5
> > > > with/adding to the test the following one should work. I still
> > > > couldn't get test to run though......
> > > >
> > > Can you try the enclosed testcases?
> >
> >
> > The assembly produced are the following with my patch and if I
> > understand it correctly those should work. Unfortunately I don't know
> > how to actually run the test as a test (if that makes sense....).
> >
>
> Place 2 files under gcc/testsuite/gcc.target/i386 and in GCC build directory, 
> do
>
> $ make check-gcc RUNTESTFLAGS="--target_board='unix{-m32,}'
> i386.exp=pr95778-*.c"
>
> They should fail without your patch and pass with your patch.

Thanks. (need to run now will be back in a hour or two)

>
>
> --
> H.J.

Reply via email to