Cint incremental bytecode compiler # Cint incremental bytecode compilation mode ################################ In order to improve interpreter speed, cint has incremental bytecode compiler. The bytecode compiler is excited by loop commands, for, while, do. You can choose level of bytecode optimization by '-O[n]' command line option or 'O[n]' interactive command. O0 : No bytecode compilation, everything is interpreted. very slow O1 : Loops are bytecode compiled O2 : + some instructions are optimized O3 : + some more instructions are optimized O4 : + function called within a loop is bytecode compiled O5 : All interpreted functions will be bytecode compiled when called Default is O4. You need to consult cint@pcroot.cern.ch when using O5. There is another level O10 , but this can be only used with special care. (Not recommended, only experimental) O10 : all interpreted functions will be bytecode compiled when loaded Bytecode compilation fails when it encounters limitations described in this document. In such case, bytecode is discarded and the code is interpreted. # Incremental bytecode compilation of loops ################################# For loop in follwing example is compiled as bytecode in the first iteration, 2nd to 10000th iterations execute bytecode. const int NUM=10000; double ary[NUM]; for(int i=0;iDoit(); // bytecode delete p; // bytecode return(pd); // bytecode } // bytecode g() { for(int i=0;i debug cint> { for(int i=0;i<5;i++) cout << i << endl; } !!!bytecode compilation operator<< start FILE:/tmp/01030aaa LINE:1 Bytecode compilation of operator<< successful FILE:iostream.h LINE:346 0 Bytecode loop compilation successful FILE:/tmp/01030aaa LINE:1 1 2 3 4 cint> * After running the loop, use 'func' or 'class [classname]' command to show list of function. Those which successfully compiled as bytecode are marked with '*'. cint> func . (compiled) 0:0 0 public: istream& ws(istream&); iostream.h 346:1 * 0 public: ostream& operator<<(ostream& ostr,... iostream.h 349:1 0 public: ostream& operator<<(ostream& ostr,... iostream.h 352:1 0 public: ostream& operator<<(ostream& ostr,... .