I added a new test example to bug 615: https://bugs.open64.net/show_bug.cgi?id=615
AFAICS, if conditions are already folded so the DCE processing needed is very straightforward. If we need to add an extra pass to handle, this the detection of called static inline functions (needed to fix bug 615,) could be done at the same time. Doug > -----Original Message----- > From: Suneel Jain [mailto:suneel.j...@gmail.com] > Sent: Friday, February 11, 2011 3:57 PM > To: C. Bergström > Cc: open64-devel@lists.sourceforge.net > Subject: Re: [Open64-devel] should we close bug588 as user error? > > > Is there any benefit outside of gcc compatibility? What are the > > disadvantages? This broadly impacts *all* code that is/will be built > with > > -O0 over 1 bad line of code. Someone should make a concise and clear > > decision about at which point compatibility makes sense. This seems > like a > > knee jerk decision > > > > The main benefit is the ability to build the Linux kernel > at all optimization levels. There are many other contexts > where compile time constants are used in if-then-else > or switch statements. This type of usage has been > quite common on Linux because of the gcc behavior. > > We would also get smaller code and faster compile time, > which does not get an error, but leads to code bloat at -O0 > > Here's another example from /usr/include/math.h > > # define signbit(x) \ > (sizeof (x) == sizeof (float) > \ > ? __signbitf (x) > \ > : sizeof (x) == sizeof (double) > \ > ? __signbit (x) : __signbitl (x)) > > ----------------------------------------------------------------------- > ------- > The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio > XE: > Pinpoint memory and threading errors before they happen. > Find and fix more than 250 security defects in the development cycle. > Locate bottlenecks in serial and parallel code that limit performance. > http://p.sf.net/sfu/intel-dev2devfeb > _______________________________________________ > Open64-devel mailing list > Open64-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/open64-devel ------------------------------------------------------------------------------ The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb _______________________________________________ Open64-devel mailing list Open64-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open64-devel