• asvitkine@chromium.org's avatar
    Make code generated for histogram macros more compact. · 5bfd0a44
    asvitkine@chromium.org authored
    In builds where DCHECKs are compiled in (e.g. developer
    builds and Chrome Canaries), the DCHECK_EQ() in the
    histogram macro was expanding to a lot of generated
    machine code.
    
    This CL moves that DCHECK() to a function instead, so that the
    code is not duplicated in every call site. The function call is
    wrapped behind a DCHECK_IS_ON() conditional, so that it will
    still be omitted if DCHECKs are not compiled into the build.
    
    Makes my Chromium release build smaller by over 1MB,
    measuring size of Chromium Framework.
    
    Before size: 146547380
    After size:  145400692
    
    BUG=343946
    TEST=No functional changes.
    
    Review URL: https://codereview.chromium.org/167343002
    
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@251486 0039d316-1c4b-4281-b951-d872f2087c98
    5bfd0a44
histogram_base.h 6.46 KB