Home | History | Annotate | Download | only in Linker

Lines Matching refs:Function

319   /// function, which is the entrypoint for this file.
390 bool linkFunctionProto(Function *SrcF);
395 void linkFunctionBody(Function *Dst, Function *Src);
675 /// linkFunctionProto - Link the function in the source module into the
677 bool ModuleLinker::linkFunctionProto(Function *SF) {
693 // Track the function from the source module so we don't attempt to remap
703 Function *NewDF = Function::Create(TypeMap.get(SF->getFunctionType()),
805 // linkFunctionBody - Copy the source function over into the dest function and
807 // function, and that Src is not.
808 void ModuleLinker::linkFunctionBody(Function *Dst, Function *Src) {
811 // Go through and convert function arguments over, remembering the mapping.
812 Function::arg_iterator DI = Dst->arg_begin();
813 for (Function::arg_iterator I = Src->arg_begin(), E = Src->arg_end();
822 // Splice the body of the source function into the dest function.
825 // At this point, all of the instructions and values of the function are now
827 // the Source function as operands. Loop through all of the operands of the
829 for (Function::iterator BB = Dst->begin(), BE = Dst->end(); BB != BE; ++BB)
834 // Clone the body of the function into the dest function.
840 for (Function::arg_iterator I = Src->arg_begin(), E = Src->arg_end();
929 // Link the functions together between the two modules, without doing function
930 // bodies... this just adds external function prototypes to the DstM
931 // function... We do this so that when we begin processing function bodies,
951 // Link in the function bodies that are defined in the source module into
958 // Skip if no body (function is external) or materialize.
966 linkFunctionBody(cast<Function>(ValueMap[SF]), SF);
988 // LinkModules - This function links two modules together, with the resulting