This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Loop Optimizer Deficiency revisited


Hi,
	I'm experimenting with sparlet build of 
	GCC 3.2 released. I could reproduce the first
	problem mentioned under section "More pathetic 
	failures of loop optimization" in 
	http://gcc.gnu.org/projects/optimize.html#pathetic-loop
	with the following piece of code. 
	
	void   badopt ( unsigned long ) ;
	void badopt(
		unsigned long l
	) {

		long ad ;
		long  i ;

		ad = l;
	
		while( ( (*((volatile unsigned long * ) (ad | 0x00007800)))/4) < 1 ) {
			i = 1000 ;
			while( --i ) ;
		}
	}
	
	This problem is there with the i386 build of 3.2.
	The problem does not reproduce with 2.96 or earlier versions.

	I could locate the Zack mail when he reported this problem
	http://gcc.gnu.org/ml/gcc-patches/2000-02/msg00408.html. But could 
	not find any reference of the problem beyond that.

	Please help in locating the furthur work done on the problem. 
	If required, I would be like to contribute towards the fix of 
	the problem.

Thanks and Regards,
Nitin Gupta


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]