[LLVMdev] main, prologue & call

yue
Thu, 25 Dec 2003 02:29:01 -0000

Chris Lattner wrote:

>>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.
>
>
libc or crt0.o
in linux which one used by llvm system?

>
>
>
>>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
>>
in llvm call is an instruction.
I want to know when execute callee function, how the caller saves
registers or stack?
such as x86 call instruction.

>>
>>
>
>I'm not sure exactly what you mean here...
>
>-Chris
>
>
>