Re: [PATCH v4 0/3] Compile-time stack frame pointer validation

Andi Kleen
2015-05-26T23:06:33Z

Ingo Molnar <mingo@kernel.org> writes:
>
> Especially on modern x86 CPUs with stack engines (latest Intel and AMD
> CPUs) that keeps ESP updates out of the later stages of execution
> pipelines, going from RBP framepointers to direct ESP use is
> beneficial to performance and compresses I$ footprint as well:

Note that Atom doesn't have this stack engine, so you'll likely
see even more difference there.

> So the performance advantages of not doing framepointers is not
> something we can ignore IMHO:

Agreed.

> but obviously performance isn't
> everything - so if stack unwinding is unrobust, then we need and
> want frame pointers.

It wasn't that bad in the old days with the approx stack traces. In
fact I bet it would be possible to write an automated tool that weeds
out many (most?) false positives automatically with a static
compile-time callgraph.

It would be good to at least make it easier building without them
again. Currently it's very difficult because a lot of subsystems force
select frame pointers.

-Andi

--
ak@linux.intel.com -- Speaking for myself only