projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
swrast: add dri2ConfigQueryExtension to the correct extension list
[mesa.git]
/
src
/
mesa
/
drivers
/
dri
/
nouveau
/
nv10_state_raster.c
diff --git
a/src/mesa/drivers/dri/nouveau/nv10_state_raster.c
b/src/mesa/drivers/dri/nouveau/nv10_state_raster.c
index 8b08c7519d01d1b6896e01778fda5c2737026659..d537f7bc22901e8a1321dc8710c0ffd39a085520 100644
(file)
--- a/
src/mesa/drivers/dri/nouveau/nv10_state_raster.c
+++ b/
src/mesa/drivers/dri/nouveau/nv10_state_raster.c
@@
-28,9
+28,12
@@
#include "nouveau_context.h"
#include "nouveau_gldefs.h"
#include "nouveau_util.h"
#include "nouveau_context.h"
#include "nouveau_gldefs.h"
#include "nouveau_util.h"
+#include "nv_object.xml.h"
#include "nv10_3d.xml.h"
#include "nv10_driver.h"
#include "nv10_3d.xml.h"
#include "nv10_driver.h"
+#include "main/stencil.h"
+
void
nv10_emit_alpha_func(struct gl_context *ctx, int emit)
{
void
nv10_emit_alpha_func(struct gl_context *ctx, int emit)
{
@@
-94,11
+97,12
@@
void
nv10_emit_depth(struct gl_context *ctx, int emit)
{
struct nouveau_pushbuf *push = context_push(ctx);
nv10_emit_depth(struct gl_context *ctx, int emit)
{
struct nouveau_pushbuf *push = context_push(ctx);
+ struct gl_framebuffer *fb = ctx->DrawBuffer;
BEGIN_NV04(push, NV10_3D(DEPTH_TEST_ENABLE), 1);
BEGIN_NV04(push, NV10_3D(DEPTH_TEST_ENABLE), 1);
- PUSH_DATAb(push, ctx->Depth.Test);
+ PUSH_DATAb(push, ctx->Depth.Test
&& fb->Visual.depthBits > 0
);
BEGIN_NV04(push, NV10_3D(DEPTH_WRITE_ENABLE), 1);
BEGIN_NV04(push, NV10_3D(DEPTH_WRITE_ENABLE), 1);
- PUSH_DATAb(push, ctx->Depth.Mask);
+ PUSH_DATAb(push, ctx->Depth.Mask
&& fb->Visual.depthBits > 0
);
BEGIN_NV04(push, NV10_3D(DEPTH_FUNC), 1);
PUSH_DATA (push, nvgl_comparison_op(ctx->Depth.Func));
}
BEGIN_NV04(push, NV10_3D(DEPTH_FUNC), 1);
PUSH_DATA (push, nvgl_comparison_op(ctx->Depth.Func));
}
@@
-118,7
+122,7
@@
nv10_emit_logic_opcode(struct gl_context *ctx, int emit)
struct nouveau_pushbuf *push = context_push(ctx);
assert(!ctx->Color.ColorLogicOpEnabled
struct nouveau_pushbuf *push = context_push(ctx);
assert(!ctx->Color.ColorLogicOpEnabled
- || context_
chipset(ctx) >= 0x11
);
+ || context_
eng3d(ctx)->oclass >= NV15_3D_CLASS
);
BEGIN_NV04(push, NV11_3D(COLOR_LOGIC_OP_ENABLE), 2);
PUSH_DATAb(push, ctx->Color.ColorLogicOpEnabled);
BEGIN_NV04(push, NV11_3D(COLOR_LOGIC_OP_ENABLE), 2);
PUSH_DATAb(push, ctx->Color.ColorLogicOpEnabled);
@@
-141,11
+145,11
@@
nv10_emit_stencil_func(struct gl_context *ctx, int emit)
struct nouveau_pushbuf *push = context_push(ctx);
BEGIN_NV04(push, NV10_3D(STENCIL_ENABLE), 1);
struct nouveau_pushbuf *push = context_push(ctx);
BEGIN_NV04(push, NV10_3D(STENCIL_ENABLE), 1);
- PUSH_DATAb(push,
ctx->Stencil.Enabled
);
+ PUSH_DATAb(push,
_mesa_stencil_is_enabled(ctx)
);
BEGIN_NV04(push, NV10_3D(STENCIL_FUNC_FUNC), 3);
PUSH_DATA (push, nvgl_comparison_op(ctx->Stencil.Function[0]));
BEGIN_NV04(push, NV10_3D(STENCIL_FUNC_FUNC), 3);
PUSH_DATA (push, nvgl_comparison_op(ctx->Stencil.Function[0]));
- PUSH_DATA (push,
ctx->Stencil.Ref[0]
);
+ PUSH_DATA (push,
_mesa_get_stencil_ref(ctx, 0)
);
PUSH_DATA (push, ctx->Stencil.ValueMask[0]);
}
PUSH_DATA (push, ctx->Stencil.ValueMask[0]);
}