Skip to content
  • Petri Latvala's avatar
    lib: Introduce BUILD_BUG_ON_INVALID and igt_assume() · 5b4485f5
    Petri Latvala authored
    
    
    BUILD_BUG_ON_INVALID() is a macro that, like the kernel counterpart,
    expands to an expression that generates no code. Useful for making
    sure an expression is valid code while producing no side effects.
    
    igt_assume() is an assert-like macro that is used to give hints to
    static analysis of code. If static analysis is not used (as detected
    by STATIC_ANALYSIS_BUILD), igt_assume() expands to a
    BUILD_BUG_ON_INVALID, otherwise expands to an assert().
    
    v2: Make sure the expression in igt_assume is still parsed without
        static analysis. (Chris)
    
    v3: Also introduce BUILD_BUG_ON_INVALID as standalone
    
    Signed-off-by: default avatarPetri Latvala <petri.latvala@intel.com>
    Cc: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Michał Winiarski <michal.winiarski@intel.com>
    Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    5b4485f5