Item ID |
Dependencies |
Est. Days |
Priority |
Category |
Description |
Item Author |
Current Owner |
Notes |
|
XF01 (Done, pending tests) |
|
3 |
high |
GL 3.0 |
Enhance state tracking for transform feedback |
Previously completed by BrianPaul |
|||
XF02 (Done, pending tests) |
|
2 |
high |
GL 3.0 |
Add 9 transform feedback entry points |
Previously completed by BrianPaul |
|||
XF03 (Done, pending tests) |
5 |
high |
GL 3.0 |
Validate parameters in transform feedback entry points |
Previously completed by BrianPaul |
||||
XF04 (Done, pending tests) |
|
5 |
high |
GL 3.0 |
Validate transform feedback related parameters in existing GL entry points |
Previously completed by BrianPaul |
|||
XF05 (Done, pending tests) |
|
5 |
high |
GL 3.0 |
glBindBuffers support for transform feedback |
Previously completed by BrianPaul |
|||
XF06 |
|
5 |
high |
GL 3.0 |
Varying variable support for transform feedback. This is filling in the guts of glTransformFeedbackVaryings and glGetTransformFeedbackVarying. |
|
|||
XF07 (Done, pending tests) |
5 |
high |
GL 3.0 |
Enhance linker support for transform feedback |
|
||||
XF_SNB_1 (Done) |
|
|
high |
GL 3.0 |
Learn how to test stream output logic in the simulator |
|
|||
XF_SNB_2 (Done) |
|
|
high |
GL 3.0 |
Implement pass-through GS shader program |
|
|||
XF_SNB_3 (Done) |
|
|
high |
GL 3.0 |
Output dummy data to transform feedback buffer |
|
|||
XF_SNB_4 (Done) |
|
|
high |
GL 3.0 |
Output correct data in SEPARATE_ATTRIBS mode |
|
|||
XF_SNB_5 (Done) |
|
|
high |
GL 3.0 |
Output correct data in INTERLEAVED_ATTRIBS mode |
|
|||
XF_SNB_6 (Done) |
|
|
high |
GL 3.0 |
Ensure that buffer overflow behavior is correct |
|
|||
XF_SNB_7 (Done) |
|
|
high |
GL 3.0 |
Update pointers correctly on begin/end/pause/resume |
|
|||
XF_SNB_8 (Done) |
|
|
high |
GL 3.0 |
Implement rasterizer discard |
|
|||
XF_SNB_9 |
|
|
high |
GL 3.0 |
Thoroughly test and debug all SNB XF behavior except queries |
|
|||
XF_SNB_10 (Done) |
|
|
high |
GL 3.0 |
Implement PRIMITIVES_GENERATED and TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries |
|
|||
XF_SNB_11 (Done) |
|
|
high |
GL 3.0 |
Test PRIMITIVES_GENERATED and TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries |
|
|||
XF_IVB_1 (Done) |
|
|
high |
GL 3.0 |
Kernel interface for setting registers |
|
|||
XF_IVB_2 (Done) |
|
|
high |
GL 3.0 |
Output correct data in SEPARATE_ATTRIBS mode |
|
|||
XF_IVB_3 (Done) |
|
|
high |
GL 3.0 |
Output correct data in INTERLEAVED_ATTRIBS mode |
|
|||
XF_IVB_4 |
|
|
high |
GL 3.0 |
Ensure that buffer overflow behavior is correct |
Should be fine, need to review tests and run them. |
|||
XF_IVB_5 (Done) |
|
|
high |
GL 3.0 |
Update pointers correctly on begin/end/pause/resume |
|
Cross-batchbuffer pointers incorrect, need to review tests and implement. |
||
XF_IVB_6 (Done) |
|
|
high |
GL 3.0 |
Implement rasterizer discard |
(works) |
|||
XF_IVB_7 (Done) |
|
|
high |
GL 3.0 |
Thoroughly test and debug all IVB XF behavior except queries |
|
(note: some oglc failures remain, one class may be IVB specific) |
||
XF_IVB_8 (Done) |
|
|
high |
GL 3.0 |
Implement PRIMITIVES_GENERATED and TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries |
|
|
||
XF_IVB_9 (Done) |
|
|
high |
GL 3.0 |
Test PRIMITIVES_GENERATED and TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN queries |
|
|
||
XF14 (Done) |
|
5 |
low |
GL 3.0 |
Test input validity |
http://cgit.freedesktop.org/~eugeni/piglit/, priority is lowered because Marek's piglit test already covers this partly |
|||
XF15 |
|
3 |
low |
GL 3.0 |
Test buffer binding |
http://cgit.freedesktop.org/~eugeni/piglit/, priority is lowered because Marek's piglit test already covers this partly |
|||
XF16 (Done) |
|
2 |
high |
GL 3.0 |
Test linking and glUseProgram |
|
|||
XF17 |
|
2 |
high |
GL 3.0 |
Test tesselation and incomplete primitives |
Paul Berry |
I think this estimate is low. |
||
XF18 |
|
1 |
high |
GL 3.0 |
Test buffer overflow |
Paul Berry |
I think this estimate is low. |
||
XF19 |
|
3 |
high |
GL 3.0 |
Test varyings |
Paul Berry |
I think this estimate is low. |
||
XF20 (Done) |
|
5 |
high |
GL 3.0 |
Test output |
|
|||
IR1 |
|
10 |
high |
perf |
Replace context “program” attached state with SSO-style shader state |
|
|||
IR2 |
10 |
high |
perf |
Generate GLSL IR for ARB assembly programs |
|
|
|||
IR3 |
10 |
high |
perf |
Generate GLSL IR for NV vertex assembly programs |
|
There will be a lot of cut-and-paste between IR2 and IR3 |
|||
IR4 |
|
3 |
high |
perf |
Remove NV fragment assembly program support |
|
|
||
CD0 (Done) |
|
10 |
high |
GL 3.0 |
Refactor VUE layout code in preparation for gl_ClipDistance |
|
|||
CD1 (Done) |
|
5 |
high |
GL 3.0 |
Compiler front-end support for gl_Distance |
|
|||
CD2 (Done) |
5 |
high |
GL 3.0 |
Lower gl_ClipDistance from float[8] to vec4[2] |
|
||||
CD3 (Done) |
5 |
high |
GL 3.0 |
Test gl_ClipDistance lowering pass |
|
||||
CD4 (Done) |
5 |
high |
GL 3.0 |
SNB support for gl_ClipDistance |
"First triangle" achieved on private branch 9/2 |
||||
CD5 (Done) |
3 |
med |
GL 3.0 |
Emit error if a shader writes both gl_ClipDistance and gl_ClipVertex |
|
||||
CD6 (Done) |
|
5 |
high |
GL 3.0 |
Add gl_ClipDistance as a fragment shader built-in input |
|
|||
CD7 (Done) |
|
5 |
high |
GL 3.0 |
Implement and test gl_ClipDistance sizing rules |
|
|||
CD8 (Done) |
|
3 |
high |
GL 3.0 |
gl_ClipDistance tests |
|
|||
CV1 (Done) |
|
5 |
med |
GL 2.x |
Add gl_vert_result slot for gl_ClipVertex |
|
|||
CV2 (Done) |
|
5 |
med |
GL 2.x |
Detect writes to gl_ClipVertex in the linker |
Proved to be unnecessary |
|||
CV3 |
3 |
low |
GL 2.x |
Use proper slot for writes to gl_ClipVertex (i915) |
|
|
|||
CV4 |
3 |
low |
GL 2.x |
Use proper slot for writes to gl_ClipVertex (i965, pre-SNB) |
|
|
|||
CV5 (Done) |
3 |
low |
GL 2.x |
Use proper slot for writes to gl_ClipVertex (i965, SNB+) |
|
||||
CV6 (Done) |
|
3 |
low |
GL 2.x |
gl_ClipVertex tests |
These could be co-developed w/CD8 |
|||
HTRIG1 (Done) |
|
2 |
med |
GL 3.0 |
Test GLSL 1.30 hyperbolic trig functions |
|
|||
HTRIG2 (Done) |
3 |
med |
GL 3.0 |
Fix GLSL 1.30 hyperbolic trig functions |
|
||||
TEST1 (Done) |
|
5 |
med |
GL 3.0 |
Adapt built-in tests for new unsigned types (vector and scalar) |
|
|||
TEST2 (Done) |
|
3 |
med |
GL 3.0 |
Adapt built-in tests to test operators |
|
|||
TEST3 (Done) |
3 |
med |
GL 3.0 |
Test isinf and isnan |
Depends on TEST6 because otherwise interpolation turns infinities into NaNs |
||||
TEST4 (Done) |
|
3 |
med |
GL 3.0 |
Test noperspective interpolation qualifier. |
|
|||
TEST5 |
|
3 |
med |
GL 3.0 |
Test centroid interpolation qualifier. |
|
|||
TEST6 (Done) |
|
3 |
med |
GL 3.0 |
Test flat interpolation qualifier. |
|
|||
TEST7 (Done) |
|
1 |
med |
GL 3.0 |
Shader inputs are read-only. We already mark global inputs as ro, but have no tests for it. |
|
|||
HIZ1 (Done) |
|
5 |
high |
perf |
Write resolve meta-ops for hiz->depth and depth->hiz |
|
|||
HIZ2 (Done) |
|
5 |
high |
perf |
Hook resolves into texture & draw functions (no mipmaps yet) |
|
|||
HIZ3 (Done) |
4 |
high |
perf |
Test and debug hiz->depth resolve hooks (single ctx, no mipmaps). |
|
||||
HIZ4 (Done) |
4 |
high |
perf |
Test and debug depth->hiz resolve hooks (single ctx, no mipmaps). |
|
||||
HIZ5 (Done) |
4 |
high |
perf |
Test and debug multi-context resolve hooks. |
|
||||
HIZ6 (Done) |
|
5 |
med |
perf |
Fast clear |
|
|||
HIZ7 (Done) |
4 |
high |
perf |
Resolve mipmap depth textures. |
|
||||
GLSL1 (Done) |
|
1 |
med |
GL 3.0 |
Generate errors for integer literals that are out of bounds |
|
|||
GLSL2 (Done) |
|
3 |
med |
GL 3.0 |
Add gl_VertexID and related global variables |
Finished by Ian in 2010 |
|||
GLSL3 (Done) |
|
2 |
med |
GL 3.0 |
Add opcodes for isinf and isnan |
Proved to be unnecessary |
|||
GLSL4 (Done) |
5 |
med |
GL 3.0 |
Lower isinf and isnan opcodes to various modes of detection on different hardware |
Proved to be unnecessary |
||||
GLSL5 (Done) |
3 |
med |
GL 3.0 |
Add isinf and isnan built-in functions. |
|
||||
GLSL6 (Done) |
|
2 |
med |
GL 3.0 |
Implement proper integer division and modulus support. |
Patches on mailing list |
|||
LINK1 |
|
2 |
med |
GL 3.0 |
Generate errors when interpolation qualifiers on gl_Color don't match |
|
|||
LINK2 |
|
2 |
low |
GL 3.0 |
Generate errors when precision qualifiers don't match. |
|
|||
LINK3 |
|
3 |
med |
GL 3.0 |
Generate an error when there is an assignment to more than one of gl_FragColor, gl_FragData, and a user-defined fragment shader output. |
|
|||
TEX1 (Done) |
|
5 |
med |
GL 3.0 |
|
||||
TEX2 (Done) |
|
1 |
med |
GL 3.0 |
|
||||
TEX2.5 (Done) |
|
4 |
med |
GL 3.0 |
Eric Anholt |
|
|
||
TEX3 (Done) |
|
5 |
low |
perf |
Real half-float texture support |
|
|
||
TEX4 (Done) |
|
4 |
med |
GL 3.0 |
Floating-point depth buffer support. |
|
|||
TEX5 (Done) |
|
3 |
med |
GL 3.0 |
Add 6 EXT_texture_integer entry points |
|
|||
TEX6 (Done) |
|
2 |
med |
GL 3.0 |
Update existing entry points to accept EXT_texture_integer enums |
|
|||
TEX7 (Done) |
5 |
med |
GL 3.0 |
Update pixel (texel) transfer paths to support integer textures |
|
||||
TEX8 (Done) |
|
3 |
med |
GL 3.0 |
Add GLSL built-in integer sampler types and functions. |
Compiler support in place since 2010 |
|||
TEX9 |
3 |
med |
GL 3.0 |
965 back-end support for integer samplers. |
|
||||
TEX9.1 |
|
3 |
med |
GL 3.0 |
integer: clamping and conversion in readback path. |
|
|
||
TEX9.2 |
|
3 |
med |
GL 3.0 |
integer: BlitFramebuffer |
|
|
||
TEX9.3 (Done) |
|
3 |
med |
GL 3.0 |
integer: DrawPixels |
|
|||
TEX9.4 |
|
3 |
med |
GL 3.0 |
integer: CopyPixels |
|
|
||
TEX10 (Done) |
|
5 |
med |
GL 3.0 |
Test 3.0 spec section "Required Texture Formats" |
|
|||
TEX11 (Done) |
|
5 |
med |
GL 3.0 |
Test 3.0 spec section "Required Framebuffer Formats" |
|
|||
VSTEX (Done) |
10 |
high |
GL 3.0 |
Implement Vertex Shader Texturing |
Upstream; still need piles more tests. |
||||
VS1 (Done) |
|
5 |
high |
perf |
i965 vertex shader “first triangle” |
|
|
||
VS2 (Done) |
|
5 |
high |
perf |
Register allocator |
|
|
||
VS3 (Done) |
|
5 |
high |
perf |
Assignment handling |
|
|
||
VS4 (Done) |
|
5 |
high |
perf |
Copy propagation |
|
|||
VS5 |
|
5 |
high |
perf |
Dead code elimination |
|
|
||
VS6 (Done) |
|
5 |
high |
perf |
Uniform arrays |
|
|||
VS7 (Done) |
5 |
high |
perf |
Support built-in gl_VertexID in i965 vertex shader back-end |
|
||||
VS8 (Done) |
|
5 |
high |
perf |
Compute to MRF |
|
|||
VS9 (Done) |
|
5 |
high |
perf |
Constant propagation |
|
|||
VS10 |
|
5 |
med |
perf |
Instruction scheduling |
|
|
||
VS11 (Done) |
|
5 |
high |
perf |
Large URB entries |
|
|
||
VS12 (Done) |
|
5 |
high |
perf |
New VS backend on by default |
|
|||
PERF1 |
|
3 |
low |
perf |
IVB conditional rendering support |
|
|
||
PERF2 |
|
10 |
med |
perf |
Kernel domain tracking lobotomy |
|
|||
PERF3 |
|
10 |
high |
perf |
Non-blocking ARB_map_buffer_range |
|
|||
PERF4 (Done) |
3 |
high |
perf |
Uncached -> cached map blits |
|
||||
PERF5 |
|
3 |
med |
perf |
Kernel GFDT testing |
|
|
||
PERF6 |
|
5 |
low |
perf |
Guardband clipping |
|
|
||
PERF7 |
|
5 |
med |
perf |
GLSL expression CSE |
|
|
||
PERF8 |
|
5 |
med |
perf |
GLSL texture operation CSE |
|
|
||
PERF9.1 |
|
3 |
low |
perf |
Hack in the constant color write and analyze performance impact |
|
|
||
PERF9.2 |
5 |
low |
perf |
Detect glClear constant color writes and emit correct constant color write code |
|
|
|||
PERF10.1 |
|
5 |
med |
perf |
Fragment shader uniform array indexing. Plumb in reladdrs and fix up optimization to know about them. |
|
|
||
PERF10.2 |
5 |
med |
perf |
Get the send message working for loading uniforms |
|
|
|||
PERF11 |
|
5 |
med |
perf |
Meta-ops winsys -> texture bind hook |
|
|
||
PERF12 |
5 |
med |
perf |
glCopyTexImage from winsys |
|
|
|||
PERF13 |
5 |
med |
perf |
glBlitFramebuffer from winsys |
|
|
|||
PERF14 (Done) |
|
3 |
med |
perf |
FS assignment handling rework. Port over the lesson from VS assignment handling, revert the old mess. |
||||
FFS1 (Done) |
|
5 |
high |
perf |
Finish fixed-function fragment shader support |
|
High priority because the work is mostly done. |
||
FFS2 |
|
5 |
high |
perf |
Get glxgears running in fixed-function vertex shader conversion |
|
High priority because the work is mostly done. |
||
FFS3 |
5 |
high |
perf |
Make sure fixed-function vertex shader conversion doesn't regress softpipe |
|
|
|||
FFS4 |
5 |
high |
perf |
Make sure fixed-function vertex shader conversion doesn't regress i965 VS |
|
|
|||
RBMAP1 (Done) |
|
10 |
med |
perf |
Renderbuffer mapping hook. This includes nouveau and radeon, unfortunately. It also includes getting public support for dropping DRI1 drivers from the tree. |
|
|||
RBMAP2 |
5 |
low |
perf |
swrast render-buffer color mapping |
|
|
|||
RBMAP3 |
5 |
low |
perf |
swrast render-buffer depth mapping |
|
|
|||
RBMAP4 (Done) |
5 |
med |
perf |
swrast glReadPixels mapping |
|
||||
RBMAP5 |
5 |
low |
perf |
swrast glDrawPixels mapping |
|
|
|||
RBMAP6 |
5 |
low |
perf |
swrast stencil mapping |
|
|
|||
RBMAP7 |
|
3 |
med |
perf |
Accumulation buffer tests |
|
|
||
RBMAP8 (Done) |
5 |
low |
perf |
swrast accumulation buffer mapping |
|
||||
RBMAP9 (Done) |
5 |
low |
perf |
swrast clear mapping |
|
||||
CUBE1 (Done) |
|
3 |
med |
GL 3.0 |
Allow glTexImage2D and glCopyTexImage2D with a depth component cube map |
|
|||
CUBE2 |
5 |
med |
GL 3.0 |
Enable back-end generation of cube shadow samplers |
|
||||
CUBE3 (Done) |
10 |
med |
GL 3.0 |
Figure out what AMD & NVIDIA do for fixed-function cube shadows and imitate that. |
NVIDIA and AMD each do something different, so undefined is undefined. There's nothing to do here. |
||||
ARRAY (Done) |
|
5 |
? |
GL 3.0 |
Finish support for ARB_texture_array |
|
|||
CB1 (Done) |
|
3 |
low |
GL 3.0 |
Verify error code generation for glClearBuffer* |
|
|||
CB2 (Done) |
|
3 |
med |
GL 3.0 |
Verify depth clears with glClearBuffer* |
|
|||
CB3 (Done) |
|
3 |
med |
GL 3.0 |
Verify stencil clears with glClearBuffer* |
|
|||
CB4 |
|
3 |
med |
GL 3.0 |
Verify mixed format color buffer clears with glClearBuffer* |
|
|
||
CB5 |
|
3 |
med |
GL 3.0 |
Verify that glClearBuffer* can be compiled into display lists |
|
|
||
CC1 |
|
5 |
med |
GL 3.0 |
Implement GLX protocol for SetClientInfo (client & server) |
The client bits are mostly done on the GLX_ARB_create_context branch of my Mesa tree. XCB patches heading to the list soon. |
|||
CC2 |
5 |
med |
GL 3.0 |
Implement GLX protocol for CreateContextAttribs |
|
||||
CC3 |
3 |
med |
GL 3.0 |
Implement DRI2 createContext2 interface that sends the attributes to the driver. |
|
||||
CC4 |
3 |
med |
GL 3.0 |
Add support for the DRI2 createContext2 interface to the Intel drivers. |
|
||||
UNI1 (Done) |
|
10 |
? |
GL 3.0 |
Create data structure similar to glsl_type for storing uniform data. It should contain the original typed data and the float “shadow” for drivers that need that. |
Patches in the idr-work branch of my personal git repo. |
|||
UNI2 (Done) |
5 |
? |
GL 3.0 |
Create map from uniform names to storage (new structure). |
|
||||
UNI3 (Done) |
10 |
? |
GL 3.0 |
Store uniform data in new structure. |
|
||||
UNI4 (Done) |
10 |
? |
GL 3.0 |
Make ir_to_mesa use the new uniform storage and mapping |
|
||||
UNI5 |
10 |
? |
GL 3.0 |
Make brw_fs use the new uniform storage and mapping |
|
With the other work, this will just be an optimization. It can wait a bit. |
|||
UNI6 |
? |
? |
GL 3.0 |
Split out any remaining uniform handling & resource allocation from ir_to_mesa |
|
||||
UNI7 |
? |
? |
GL 3.0 |
make ir_to_mesa stop generating code for fragment shaders when there is another (hardware) back-end active. |
|
||||
TXF1 (Done) |
|
3 |
med |
GL 3.0 |
Add support for the ir_txf opcode using the “ld” sampler message in brw_fs |
|
|||
TXF2 (Done) |
|
4 |
med |
GL 3.0 |
Write tests for texelFetch |
|
|||
TXS1 (Done) |
|
3 |
high |
GL 3.0 |
Merge kwg/txs branch with airlied's patch, and push both. |
|
High priority because the work is mostly done. |
||
TXS2 (Done) |
|
3 |
high |
GL 3.0 |
Write tests for textureSize |
|
Could add more tests |
||
TXS3 (Done) |
|
3 |
med |
GL 3.0 |
Implement TXS on GEN4 via SIMD16 resinfo message |
|
|
||


