Hi Balaji. If you have access to GCC source and are willing to change it, there is a way to turn off IRA (the Integrated Register Allocator) and just use a "fast allocation" algorithm that otherwise only gets used for -O0.
Should IRA be the issue, this may be a workaround for you in the short-term: In GCC version 4.4.1, the last function of ira-color.c is called ira-color(). Simply make it always call fast_allocation instead of only if ira_conflict_p is false. Best regards, Ian > -----Original Message----- > From: gcc-ow...@gcc.gnu.org [mailto:gcc-ow...@gcc.gnu.org] On Behalf Of > balaji.i...@gtri.gatech.edu > Sent: 15 February 2010 17:04 > To: gcc@gcc.gnu.org > Subject: GCC freezing for a Multiply Chain > > Hello Everyone, > I am creating a benchmark, where I have a following code: > > x1 = a * b > x2 = x1 * a; > x3 = x1* x2; > x4 = x2 * x3; > x5 = x3 * x4; > x6 = x5 * x6; > . . . > . . . > x1000 = x999 * x998; > > > > When I do this, and compile using -O3/-O2/-O1, the compiler freezes. > Am I doing anything wrong? > > GCC Version: 4.2.1 > Platform: x86_64 (in macOS Snow Leopard). > > I also tested this on a i386 (Red Hat 4.3.2-7) machine with gcc 4.3.2 > and I had the same response. > > Please CC me in the response since I m not a subscribed member of this > mailing list. > > Any help is highly appreciated! > > Thanks, > > > Balaji V. Iyer.