[LLVMdev] Dragonegg stack variables reorderings

Job Noorman jobnoorman at gmail.com
Thu Mar 15 08:29:46 PDT 2012


Hi Duncan,

> I think this is probably due to stack variables being output lazily, i.e.
> when first used.  For example, if you declare variables A and B but use B
> first then probably B will get output to the LLVM IR first.

I think you're right: I fixed my particular problem by initializing all stack 
variables.

> I guess I could arrange for them all to be output in one fell swoop at the
> start of the function.  Why do you need this?

I need this to make RIPE (https://github.com/johnwilander/RIPE) work. RIPE is 
the "runtime intrusion prevention evaluator" and it is a program that performs 
a lot of different attacks on itself. It relies on the order of stack 
variables for its stack smashing attacks.

Regards,
Job



More information about the llvm-dev mailing list