Don't always declare frag shader INPUT[0] as fragment position.
We were doing this for the sake of softpipe and the tgsi intergrepter since
we always need the fragment position and W-coordinate information in order
to compute fragment interpolants.
But that's not appropriate for hardware drivers.
The tgsi interpreter now get x,y,w information from a separate tgsi_exec_vector
variable setup by softpipe.
The new pipe_shader_state->input_map[] defines how vert shader outputs map
to frag shader inputs. It may go away though, since one can also examine
the semantic label on frag shader input[0] to figure things out.
Add QuadX,Y fields to tgsi_exec_machine to pass quad's position to tgsi interpreter.
The tgsi linear/perspective attribute code now uses these values rather than
input[0]. Need to update SSE path to take quad x,y as function params.
Then, we can remove additional code.
Move float/rgba tile get/put functions into new file.
This should be moved into a gallium util lib (location tbd) so it can also
be used by the state tracker.
Then, remove the pipe->get/put_tile_rgba() functions.
Re-org of st_create_framebuffer() and renderbuffer format selection.
st_create_framebuffer() now takes pipe_formats for the color, depth, stencil
buffers.
This avoids a round-about chain of calls to pipe->is_format_supported() for
window renderbuffers (their format never changes).
Renderbuffer format selection code in st_format.c is simpler now too.
i965: compile vertex shaders and emit hardware instructions
impossible to test because fragment shaders haven't been done yet
and it crahses in the fragment shading code. but given that i'm
infallible (and highly dillusional) i'm sure it's correct.
i915tex: remove. it's deprecated and causes merge problems
we did some small changes in the beginning of the gallium3d
lifecycle in i915tex which is not in master anymore and just
causes problems when doing merges. getting rid of the headache
by just nuking it here