Re: Unable to remove stall at shed2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Aug 8, 2012 at 10:08 PM, Shweta Gupta
<er.shwetagupta.edu@xxxxxxxxx> wrote:
> The previous output of shed2 contains typing mistake, So the updated output
> of shed2:
>  r3=[ar6-0x34]
>  [ar2++]=r3
>  r2=[ar6-0x30]
>  [ar2++]=r2
>  r1=[ar6-0x2c]
>  [ar2++]=r1
> I have use –fno-strict-aliasing command line option when compiling test case
> but not change in output of shed2
> ./cc1.exe -O2 -frename-registers -fschedule-insns -fno-strict-aliasing
> -fdump-rtl-all  /cygdrive/d/test.c
>
> I have also use –fstrict-aliasing command line option but not change in
> sched2 output
> ./cc1.exe -O2 -frename-registers -fschedule-insns -fstrict-aliasing
> -fdump-rtl-all  /cygdrive/d/test.c

You didn't show us the source code, but this is not necessarily a case
that -fstrict-aliasing will affect.  If the two pointers have the same
type, then it doesn't matter whether you use -fstrict-aliasing or not.
 A store through a int* pointer can change the value read from a int*
pointer.  The compiler can only move the read before the store if it
can prove that the pointers do not point to the same part of memory.
You haven't showed us any source code, so I don't know whether this is
a possible problem or not.  I'm just suggesting it as the first path
of investigation.

You are most likely going to have to dig into the compiler data
structures to find out what is going on.  You're unlikely to get a
quick answer on this mailing list.  Sorry.

Ian



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux