[LLVMdev] Backend optimizations

Rinaldini Julien julien.rinaldini at heig-vd.ch
Mon Jan 26 06:33:22 PST 2015


> From the department of ignorance and stupid suggestions: Run this
> conversion after other passes that deal with call instructions?

Yes, but my modifications are not made in a MachineFunctionPass, it's a
custom inserter for an intrinsic... I'm not sure when intrinsic lowering
is applied, but I guess before any MachineFunctionPass? So I'm not sure
I can chosse the order at this point.

> Side question: Is this targeting some unusual x86 architecture, as I
> believe this would be quite detrimental to performance on modern CPUs,
> as they use the pair of call/return to do predictive execution, so if
> you remove the CALL, the return will "unbalance" the call stack
> management, and lead to slower execution.

The goal here is to add some obfuscation to the final binary, so some
performance loss is excepted!

Cheers



More information about the llvm-dev mailing list