[LLVMdev] main, prologue & call

Chris Lattner sabre at nondot.org
Thu Dec 25 01:56:00 PST 2003


> I don't understand exactlly the difference among main function, prologue
> code, and call function.

I'm not sure that I understand your question.  LLVM abstracts away
target-specific information like function prologs and epilogs.

If you are curious about the typical arrangement used by unix systems with
_start and main, LLVM does not have that.  Basically it uses 'main' as the
entry point to the program, allowing the system specific _start to set up
the system specific stuff it has to in a normal system, without llvm
having to know about it.  This is typically pulled in from the native libc
or crt0.o.

> how the llvm JIT process them in details?
> the main function is a program start entry

To start a program, the JIT code generates the main function, then jumps
to it to start execution.

> prologue code
> call

I'm not sure exactly what you mean here...

-Chris

-- 
http://llvm.cs.uiuc.edu/
http://www.nondot.org/~sabre/Projects/




More information about the llvm-dev mailing list