On Sat, Apr 21, 2018 at 2:06 PM, Dennis Zhou <dennisszhou@xxxxxxxxx> wrote: > Hi, > > On Fri, Apr 20, 2018 at 07:56:56AM +0200, Dmitry Vyukov wrote: >> As a sanity check, I would count number of zeroing inserted by the >> plugin it both cases and ensure that now it does not insert order of >> magnitude more/less. It's easy with function calls (count them in >> objdump output), not sure what's the easiest way to do it for inline >> instrumentation. We could insert printf into the pass itself, but it >> if runs before inlining and other optimization, it's not the final >> number. > > I modified the structleak_plugin to count the number of initializations > and output if the function was an inline function or not. The aggregated > values are below. > > declared inline no yes > ---------------------------------- > early_optimizations: 12168 7114 > *all_optimizations: 12554 13 > > These numbers seem appropriate. The structleak initializes in declared > inline functions are redundant. Does this mean we end up with redundant initializers, or are they optimized away in later passes? -Kees -- Kees Cook Pixel Security