From: John Criswell
LLVM functions definitions are composed of a (possibly empty) argument list, +
LLVM function definitions are composed of a (possibly empty) argument list, an opening curly brace, a list of basic blocks, and a closing curly brace. LLVM function declarations are defined with the "declare" keyword, a -function name and a function signature.
+function name, and a function signature.A function definition contains a list of basic blocks, forming the CFG for the function. Each basic block may optionally start with a label (giving the