Lines Matching refs:Function
86 llvm::Constant *function;
89 // Special-case non-array C++ destructors, where there's a function
97 function = CGM.GetAddrOfCXXDestructor(dtor, Dtor_Complete);
100 // Otherwise, the standard logic requires a helper function.
102 function = CodeGenFunction(CGM).generateDestroyHelper(addr, type,
108 CGM.getCXXABI().registerGlobalDtor(CGF, function, argument);
155 static llvm::Function *
160 /// Create a stub function, suitable for being passed to atexit,
161 /// which passes the given address to the given destructor function.
165 // Get the destructor function type, void(*)(void).
167 llvm::Function *fn =
183 if (llvm::Function *dtorFn =
184 dyn_cast<llvm::Function>(dtor->stripPointerCasts()))
192 /// Register a global destructor using the C atexit runtime function.
195 // Create a function which calls the destructor.
204 if (llvm::Function *atexitFn = dyn_cast<llvm::Function>(atexit))
224 static llvm::Function *
228 llvm::Function *Fn =
229 llvm::Function::Create(FTy, llvm::GlobalValue::InternalLinkage,
259 // Create a variable initialization function.
260 llvm::Function *Fn =
295 // Create our global initialization function.
301 // into separate function. Note - everything is sorted first by priority,
311 // Compute the function suffix from priority. Prepend with zeroes to make
312 // sure the function names are also ordered as priorities.
316 llvm::Function *Fn =
330 llvm::Function *Fn =
348 // Create our global destructor function.
349 llvm::Function *Fn =
357 void CodeGenFunction::GenerateCXXGlobalVarDeclInitFunc(llvm::Function *Fn,
382 void CodeGenFunction::GenerateCXXGlobalInitFunc(llvm::Function *Fn,
410 void CodeGenFunction::GenerateCXXGlobalDtorsFunc(llvm::Function *Fn,
426 if (llvm::Function *F = dyn_cast<llvm::Function>(Callee))
433 /// generateDestroyHelper - Generates a helper function which, when
435 llvm::Function *
449 llvm::Function *fn =