Portal | IBM Manuals | Downloads | Products | Refer | Info | Programs | JCLs | Forum Rules*| Site Map | Mainframe CD 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index
 
Register
 
IBMMAINFRAMES.com - IBM Mainframe Support Forums Index FAQ Search Memberlist Usergroups Profile Log in to check your private messages Log in
 
No difference with or not the parameter OPTIONS(INLINE)

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & ASSEMBLER
Author Message
robert-ohlen

New User


Joined: 01 Jun 2007
Posts: 8
Location: Soiron

PostPosted: Tue Jun 24, 2008 12:26 pm    Post subject: No difference with or not the parameter OPTIONS(INLINE)
Reply with quote

I would like use the parameter OPTIONS(INLINE).
But i don't see the difference.
Here is the source code that I use to test the option INLINE.

Code:
TEST:PROC OPTIONS(MAIN);                   
DCL SYSPRINT FILE STREAM OUTPUT PRINT;     
DCL I FIXED BIN(31) INIT(0);               
DCL E FIXED BIN(31) INIT(0);               
DCL F FIXED BIN(31) INIT(0);               
DCL C CHAR(250) INIT('');                   
DCL C_1 CHAR(1) BASED(PTRADD(ADDR(C),E-1));
DO I=1 TO 10_000;                           
  C='';                                     
  DO F=1 TO 250;                           
    CALL TEST1;                             
  END;                                     
END;                                       
TEST1:PROC REORDER OPTIONS(INLINE);         
DO E=250 TO 1 BY -1 WHILE(C_1='');         
END;                                       
E=E+1;                                     
C_1='A';                                   
END TEST1;                                 
END TEST;   


This test consumes CPU 0MIN 01.74SEC

The same code without option INLINE generates the same
assembler code and gives the same result.

I was expecting to have the same result as if the code of procedure TEST1 was in place of CALL.

Code:
TEST:PROC OPTIONS(MAIN);                   
DCL SYSPRINT FILE STREAM OUTPUT PRINT;     
DCL I FIXED BIN(31) INIT(0);               
DCL E FIXED BIN(31) INIT(0);               
DCL F FIXED BIN(31) INIT(0);               
DCL C CHAR(250) INIT('');                 
DCL C_1 CHAR(1) BASED(PTRADD(ADDR(C),E-1));
DO I=1 TO 10_000;                         
  C='';                                   
  DO F=1 TO 250;                           
    DO E=250 TO 1 BY -1 WHILE(C_1='');     
    END;                                   
    E=E+1;                                 
    C_1='A';                               
  END;                                     
END;                                       
END TEST;


This test consumes CPU 0MIN 01.69SEC

is what I used wrong or not understood the option INLINE?
Back to top
View user's profile Send private message
References
PostPosted: Tue Jun 24, 2008 12:26 pm    Post subject: Re: No difference with or not the parameter OPTIONS(INLINE) Reply with quote

Gnanas SNG

Senior Member


Joined: 06 Sep 2007
Posts: 417
Location: India

PostPosted: Tue Jun 24, 2008 2:18 pm    Post subject:
Reply with quote

Hi,

This info is from QW INLINE.
Code:
Even if INLINE is specified, the compiler can choose not to inline the
begin-block or procedure.                                             
Back to top
View user's profile Send private message
robert-ohlen

New User


Joined: 01 Jun 2007
Posts: 8
Location: Soiron

PostPosted: Wed Jun 25, 2008 11:42 am    Post subject:
Reply with quote

What are cases where the compiler does not take into account the parameter INLINE ?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> PL/I & ASSEMBLER All times are GMT + 6 Hours
Page 1 of 1