public CallPoint reserveCallPoint ( int name , int length ) { // Work out where the code will go and advance the insertion point beyond its end, so that additional code // will be added beyond the reserved space. int address = getCodeInsertionPoint ( ) ; advanceCodeInsertionPoint ( length ) ; // Create a call point for the reserved space. CallPoint callPoint = new CallPoint ( address , length , name ) ; // Add the call point to the symbol table under the interned name. symbolTable . put ( name , getCallPointSymbolField ( ) , callPoint ) ; return callPoint ; }
Reserves a call point for a block of named callable code . The size of the block of code must be known fully in advance . If the named block already has a call point this will replace it with a new one .