[Intel-gfx] [PATCH] drm/i915: logical-not-parenthesis gcc 5.0 fixes
Chris Wilson
chris at chris-wilson.co.uk
Sun Feb 22 14:04:23 PST 2015
On Sun, Feb 22, 2015 at 08:10:11PM +0100, François Tigeot wrote:
> * This change prevents "logical not is only applied to the left hand side of comparison"
> gcc 5.0 warnings.
>
> * Originally added by John Marino in DragonFly's eecf6c3c3b6f7127edd8b8f8c2a83e2f882ed0da
> commit.
>
> Signed-off-by: François Tigeot <ftigeot at wolfpond.org>
> ---
> drivers/gpu/drm/i915/i915_gem_tiling.c | 2 +-
> drivers/gpu/drm/i915/intel_display.c | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_tiling.c b/drivers/gpu/drm/i915/i915_gem_tiling.c
> index 7a24bd1..402179c 100644
> --- a/drivers/gpu/drm/i915/i915_gem_tiling.c
> +++ b/drivers/gpu/drm/i915/i915_gem_tiling.c
> @@ -512,7 +512,7 @@ i915_gem_object_do_bit_17_swizzle(struct drm_i915_gem_object *obj)
> struct page *page = sg_page_iter_page(&sg_iter);
> char new_bit_17 = page_to_phys(page) >> 17;
> if ((new_bit_17 & 0x1) !=
> - (test_bit(i, obj->bit_17) != 0)) {
> + (test_bit(i, obj->bit_17) ? 1 : 0)) {
That doesn't improve the code, and here it looks like gcc's warning is
simply misleading.
static inline bool new_page_needs_bit17_swizzle(struct page *page)
{
return page_to_phys(page) & (1 << 17);
}
static inline bool old_page_has_bit7_swizzle(struct drm_i915_gem_object *obj,
int page)
{
return test_bit(page, obj->bit_17);
}
if (new_page_needs_bit17_swizzle(page) != old_page_has_bit17_swizzle(obj, i)) {
Should be clearer.
> i915_gem_swizzle_page(page);
> set_page_dirty(page);
> }
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 3b0fe9f..91264b2 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -13299,7 +13299,7 @@ intel_check_plane_mapping(struct intel_crtc *crtc)
> val = I915_READ(reg);
>
> if ((val & DISPLAY_PLANE_ENABLE) &&
> - (!!(val & DISPPLANE_SEL_PIPE_MASK) == crtc->pipe))
> + (!!( (val & DISPPLANE_SEL_PIPE_MASK) == crtc->pipe) ))
That's wrong.
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list