summaryrefslogtreecommitdiff
path: root/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c')
-rw-r--r--lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c b/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c
index aaf6a80e8..35f3618e8 100644
--- a/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c
+++ b/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c
@@ -179,12 +179,13 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv,
{
struct llvmpipe_context *llvmpipe;
+ if (!llvmpipe_screen_late_init(llvmpipe_screen(screen)))
+ return NULL;
+
llvmpipe = align_malloc(sizeof(struct llvmpipe_context), 16);
if (!llvmpipe)
return NULL;
- util_init_math();
-
memset(llvmpipe, 0, sizeof *llvmpipe);
make_empty_list(&llvmpipe->fs_variants_list);
@@ -283,6 +284,9 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv,
draw_wide_point_threshold(llvmpipe->draw, 10000.0);
draw_wide_line_threshold(llvmpipe->draw, 10000.0);
+ /* initial state for clipping - enabled, with no guardband */
+ draw_set_driver_clipping(llvmpipe->draw, FALSE, FALSE, FALSE, TRUE);
+
lp_reset_counters();
/* If llvmpipe_set_scissor_states() is never called, we still need to