John Regehr <reg...@cs.utah.edu> writes: > This effort is relevant: > > http://research.microsoft.com/en-us/um/people/jcondit/capriccio-sosp-2003.pdf
Yes. Unfortunately, their analysis which lets them avoid testing at the entry to each function requires a complete call graph, which is not something gcc can assume in practice. Even when using LTO a genuinely complete call graph is not the normal case. It's true that we can use an analysis along these lines to avoid some checks in file-static functions (or, with LTO, in functions which get hidden visibility for whatever reason). However, I suspect that in practice this will be a minor optimization--worth doing, but only when everything else is working. Ian