util: use standard name for sprintf()
[mesa.git] / src / gallium / drivers / freedreno / a3xx / fd3_program.c
index edc3a4dd6c457010a07b94f70fdb6544a13f99c2..af7f19d59bacee5a740d9446230b0ba27c5d56b6 100644 (file)
@@ -44,7 +44,7 @@ create_shader_stateobj(struct pipe_context *pctx, const struct pipe_shader_state
 {
        struct fd_context *ctx = fd_context(pctx);
        struct ir3_compiler *compiler = ctx->screen->compiler;
-       return ir3_shader_create(compiler, cso, type, &ctx->debug);
+       return ir3_shader_create(compiler, cso, type, &ctx->debug, pctx->screen);
 }
 
 static void *
@@ -122,7 +122,7 @@ emit_shader(struct fd_ringbuffer *ring, const struct ir3_shader_variant *so)
                OUT_RING(ring, CP_LOAD_STATE_1_EXT_SRC_ADDR(0) |
                                CP_LOAD_STATE_1_STATE_TYPE(ST_SHADER));
        } else {
-               OUT_RELOC(ring, so->bo, 0,
+               OUT_RELOCD(ring, so->bo, 0,
                                CP_LOAD_STATE_1_STATE_TYPE(ST_SHADER), 0);
        }
        for (i = 0; i < sz; i++) {
@@ -211,7 +211,7 @@ fd3_program_emit(struct fd_ringbuffer *ring, struct fd3_emit *emit,
        face_regid      = ir3_find_sysval_regid(fp, SYSTEM_VALUE_FRONT_FACE);
        coord_regid     = ir3_find_sysval_regid(fp, SYSTEM_VALUE_FRAG_COORD);
        zwcoord_regid   = (coord_regid == regid(63,0)) ? regid(63,0) : (coord_regid + 2);
-       vcoord_regid    = ir3_find_sysval_regid(fp, SYSTEM_VALUE_VARYING_COORD);
+       vcoord_regid    = ir3_find_sysval_regid(fp, SYSTEM_VALUE_BARYCENTRIC_PIXEL);
 
        /* adjust regids for alpha output formats. there is no alpha render
         * format, so it's just treated like red
@@ -226,6 +226,7 @@ fd3_program_emit(struct fd_ringbuffer *ring, struct fd3_emit *emit,
 
        OUT_PKT0(ring, REG_A3XX_HLSQ_CONTROL_0_REG, 6);
        OUT_RING(ring, A3XX_HLSQ_CONTROL_0_REG_FSTHREADSIZE(FOUR_QUADS) |
+                       A3XX_HLSQ_CONTROL_0_REG_FSSUPERTHREADENABLE |
                        A3XX_HLSQ_CONTROL_0_REG_CONSTMODE(constmode) |
                        /* NOTE:  I guess SHADERRESTART and CONSTFULLUPDATE maybe
                         * flush some caches? I think we only need to set those