On 4/3/19 12:37 PM, William Tambe wrote: > Some architecture define the "prologue" pattern using [(clobber > (const_int 0))] others use [(const_int 1)] without clobber. ie: > > (define_expand "prologue" > [(clobber (const_int 0))] > "" > "") > > What is the meaning of the "prologue" pattern single argument ? > What is the effect of using clobber ? Prologue refers to the start of each function where you do things like adjust the stack pointer, save call clobbered registers, set up a PIC register and the like. There's also an epilogue where you reverse those effects. It is strongly recommended you implement the prologue/epilogue as define_expands rather than the old method of directly emitting text into the assembly file. The pattern for the expander really isn't important. You just need something in there as a placeholder.. The expander usually calls something like <target>_expand_prologue. visium.md is probably a good one to review when doing a port. jeff