[Intel-gfx] [PATCH] drm/i915: Replace some PAGE_SHIFTs with I915_GTT_PAGE_SIZE
Chris Wilson
chris at chris-wilson.co.uk
Tue Sep 18 10:57:39 UTC 2018
Quoting Ville Syrjala (2018-09-17 18:14:14)
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
> Clean up some cases where we're dealing with GTT pages instead of
> system pages to use I915_GTT_PAGE_SIZE instead of PAGE_SHIT. So
> just replace the the shifts with mul/div as appropriate. These
> are the easy ones, the rest probably need some actual thought.
>
> No real changes in the generated asm. Only gen8_ppgtt_insert_4lvl()
> was affected as gcc decided to do the following change:
> - be9: 89 d9 mov %ebx,%ecx
> - beb: c1 e1 0c shl $0xc,%ecx
> - bee: 48 63 c9 movslq %ecx,%rcx
> + be9: 48 63 cb movslq %ebx,%rcx
> + bec: 48 c1 e1 0c shl $0xc,%rcx
> and that then shifted a bunch of the offset by one byte. I presume
> the sign extensions in the asm are due to integer promotions from
> u16 etc. Hopefully someone has confirmed that those don't end up
> doing the wrong thing for us.
>
> Signed-off-by: Ville Syrjälä <ville.syrjala at linux.intel.com>
Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
-Chris
More information about the Intel-gfx
mailing list