summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i965/brw_eu_emit.c
AgeCommit message (Collapse)Author
2009-04-17i915: fix broken indirect constant buffer readsBrian Paul
The READ message's msg_control value can be 0 or 1 to indicate that the Oword should be read into the lower or upper half of the target register. It seems that the other half of the register gets clobbered though. So we read into two dest registers then use a MOV to combine the upper/lower halves.
2009-04-16i965: implement relative addressing for VS constant buffer readsBrian Paul
A scatter-read should be possible, but we're just using two READs for the time being.
2009-04-14i965: fix VS constant buffer readsBrian Paul
This mostly came down to finding the right MRF incantation in the brw_dp_READ_4_vs() function. Note: this feature is still disabled (but getting close to done).
2009-04-14i965: checkpoint commit: VS constant buffersBrian Paul
Hook up a constant buffer, binding table, etc for the VS unit. This will allow using large constant buffers with vertex shaders. The new code is disabled at this time (use_const_buffer=FALSE).
2009-04-09i965: new SURF_INDEX_ macrosBrian Paul
Used to map drawables, textures and constant buffers to surface binding table indexes.
2009-04-08i965: set BRW_MASK_DISABLE flag in "send" instruction in brw_dp_READ_4()Brian Paul
This fixes the random results that were seen when fetching a constant inside an IF/ELSE clause. Disabling the execution mask ensures that all the components of the register are written.
2009-04-03i965: s/GL_FALSE/BRW_COMPRESSION_NONE/Brian Paul
2009-04-03i965: fix response length param in brw_dp_READ_4()Brian Paul
We were accidentally clobbering the next register.
2009-04-03i965: added new brw_dp_READ_4() functionBrian Paul
Used to read float[4] vectors from the constant buffer/surface.
2009-04-03i965: new and updated commentsBrian Paul
2009-04-03i965: comments for brw_SAMPLE()Brian Paul
2009-03-13i965: add some register number assertionsBrian Paul
Haven't seen failures yet, but if/when there are, more investigation will be done.
2009-02-13i965: minor clean-upsBrian Paul
2009-01-05i965: implement OPCODE_TRUNC (round toward zero) on vertex path.Brian Paul
Also, fix some RNDD vs. RNDZ confusion elsewhere.
2008-11-02i965: Merge GM45 into the G4X chipset define.Eric Anholt
The mobile and desktop chipsets are the same, and having them separate is more typing and more chances to screw up.
2008-11-01Fix for 58dc8b7: dest regions must not use HorzStride 0 in ExecSize 1Keith Packard
Quoting section 11.3.10, paragraph 10.2 of the 965PRM: 10.2. If ExecSize is 1, dst.HorzStride must not be 0. Note that this is relaxed from rule 10.1.2. Also note that this rule for destination horizontal stride is different from that for source as stated in rule #7. GM45 gets very angry when rule 10.2 is violated. Patch 58dc8b7 (i965: support destination horiz strides in align1 access mode) added support for additional horizontal strides in the ExecSize 1 case, but failed to notice that mesa occasionally re-purposes a register as a temporary destination, even though it was constructed as a repeating source with HorzStride = 0. While, ideally, we should probably fix the code using these register specifications, this patch simply rewrites them to use HorzStride 1 as the pre-58dc8b7 code did. Signed-off-by: Keith Packard <keithp@keithp.com>
2008-10-31i965: support destination horiz strides in align1 access mode.Gary Wong
This is required for scatter writes in destination regions to work.
2008-08-29i965: force thread switch after IF/ELSE/ENDIF. partial fix for #16882.Xiang, Haihao
A thread switch is implicitly invoked after the issuance of an IF/ELSE/ENDIF instruction if necessary. Unfortunately it seems sometimes a forced thread switch is needed.
2008-08-29i965: mask control for BREAK/CONT/DO/WHILE. partial fix fox #16882Xiang, Haihao
2008-07-08i965: official name for GM45 chipsetXiang, Haihao
2008-01-29i965: new integrated graphics chipset supportXiang, Haihao
2007-11-27i965: The jump instruction count is addedXiang, Haihao
to IP pre-increment, and should point to the first instruction after the do instruction of the do-while block of code
2007-09-29 support continue, fix conditionalZou Nan hai
2007-06-21 support branch and loop in pixel shaderZou Nan hai
most of the sample working with some small modification
2007-04-12 Initial 965 GLSL supportZou Nan hai
2007-01-06i965: Avoid branch instructions while in single program flow mode.Eric Anholt
There is an errata for Broadwater that threads don't have the instruction/loop mask stacks initialized on thread spawn. In single program flow mode, those stacks are not writable, so we can't initialize them. However, they do get read during ELSE and ENDIF instructions. So, instead, replace branch instructions in single program flow mode with predicated jumps (ADD to the ip register), avoiding use of the more complicated branch instructions that may fail. This is also a minor optimization as no ENDIF equivalent is necessary. Signed-off-by: Keith Packard <keithp@neko.keithp.com>
2006-09-01fix a couple of cases where a message reg is used as an instruction source.Keith Whitwell
2006-08-09Add Intel i965G/Q DRI driver.Eric Anholt
This driver comes from Tungsten Graphics, with a few further modifications by Intel.