Hi,

I am not sure why you are seeing no DO_LOOP/WHILE_DO. Generation of WHILE_DO 
does not depend on WOPT, so even if you compile with -O0 -ipa, you should still 
see WHILE_DO. If you compile with just -ipa (which invokes the preoptimizer 
before IPA), you should see DO_LOOP in the code.

What options are you using, and what compiler version?

Gautam




________________________________
From: Gang Yu <yugang...@gmail.com>
To: open64-devel@lists.sourceforge.net
Sent: Wed, July 21, 2010 6:29:53 PM
Subject: [Open64-devel] loopnest in inliner

Hi, all:

    I am just get in trouble in ipa inliner. As you know, there is a variable 
*loopnest* in Summary_Callsite which indicates the loopnest of the callsite. 
loopnest is obtained on up-traversel the whirl tree(ipl_summary_template.h). 
However, since the IPA is before wopt phase,  the whirl could not generate any 
OPR_DO_LOOP,OPR_WHILE_DO,  so, anytime I get loopnest always be 0. Does anyone 
previously meet the problem? Thanks for your correction and advice.

   Thanks for your attentions!  

Below is a test case:

int x;
int y=5;

static int foo(int x){
  int i;
  int sum;
  for(i=x;i<x+2;i++){
    sum+=i;
  }
  return sum;
}



int main(int argc, char* argv[]){
  int j;
  int i;
  if (y>=1){
    x=5;
    for(i=0;i<10;i++)
      for(j=0;j<2;j++){
    x=foo(x);
      }
  }
}

Gang



      
------------------------------------------------------------------------------
This SF.net email is sponsored by Sprint
What will you do first with EVO, the first 4G phone?
Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to