Home | History | Annotate | Line # | Download | only in i915
      1      1.1  mrg Random list of problems with i915g:
      2      1.1  mrg 
      3      1.1  mrg - What does this button do? Figure out LIS7 with regards to depth offset.
      4      1.1  mrg 
      5      1.1  mrg - Dies with BadDrawable on GLXFBconfig changes/destruction. Makes piglit totally
      6      1.1  mrg   unusable :( Upgrading xserver helped here, it doesn't crash anymore. Still
      7      1.1  mrg   broken, it doesn't update the viewport/get new buffers.
      8      1.1  mrg 
      9      1.1  mrg - Y-tiling is even more fun. i915c doesn't use it, maybe there's a reason?
     10      1.1  mrg   Texture sampling from Y-tiled buffers seems to work, though (save above
     11      1.1  mrg   problems).
     12      1.1  mrg   RESOLVED: Y-tiling works with the render engine, but not with the blitter.
     13      1.1  mrg   Use u_blitter and hw clears (PRIM3D_CLEAR_RECT).
     14      1.1  mrg 
     15      1.1  mrg - src/xvmc/i915_structs.h in xf86-video-intel has a few more bits of various
     16      1.1  mrg   commands defined. Scavenge them and see what's useful.
     17      1.1  mrg 
     18      1.1  mrg - Do smarter remapping. Right now we send everything onto tex coords 0-7.
     19      1.1  mrg   We could also use diffuse/specular and pack two sets of 2D coords in a single
     20      1.1  mrg   4D. Is it a big problem though? We're more limited by the # of texture
     21      1.1  mrg   indirections and the # of instructions.
     22      1.1  mrg 
     23      1.1  mrg - Finish front/back face. We need to add face support to lp_build_system_values_array and use it in draw_llvm.c.
     24      1.1  mrg 
     25      1.1  mrg - More optimizations, like replacing ADD + MUL with MAD or use DP2ADD.
     26      1.1  mrg 
     27      1.1  mrg - Replace constants and immediates which are 0,1,-1 or a combination of those with a swizzle.
     28      1.1  mrg 
     29      1.1  mrg - Schedule instructions to minimize the number of phases. One way is to replace
     30      1.1  mrg   R registers responsible for a boundary with U registers to avoid phase
     31      1.1  mrg   boundaries.
     32      1.1  mrg 
     33      1.1  mrg - Continue a previous primitive when there are no state changes
     34      1.1  mrg 
     35      1.1  mrg - Fix fragment discard
     36      1.1  mrg 
     37      1.1  mrg Other bugs can be found here:
     38  1.1.1.3  mrg https://gitlab.freedesktop.org/mesa/mesa/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=i915g
     39