diff options
author | Zou Nan hai <[email protected]> | 2007-09-30 13:47:05 +0800 |
---|---|---|
committer | Zou Nan hai <[email protected]> | 2007-09-30 13:47:05 +0800 |
commit | 3d6c4109902b555a3f8076170d572c7caeb6cbfe (patch) | |
tree | 38270fb9071b61d94ff89988feba25d247796945 /src/mesa/drivers/dri/i965 | |
parent | b0b48798c7e854d2e36e0317bf94b7385e815242 (diff) |
fragment shader function call fix, gl_FragCoord fix
Diffstat (limited to 'src/mesa/drivers/dri/i965')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_eu.h | 5 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_wm_glsl.c | 6 |
2 files changed, 8 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_eu.h b/src/mesa/drivers/dri/i965/brw_eu.h index d44217d02fa..5c98767c3e5 100644 --- a/src/mesa/drivers/dri/i965/brw_eu.h +++ b/src/mesa/drivers/dri/i965/brw_eu.h @@ -648,6 +648,11 @@ static __inline struct brw_reg deref_1uw(struct brw_indirect ptr, GLint offset) return retype(deref_1f(ptr, offset), BRW_REGISTER_TYPE_UW); } +static __inline struct brw_reg deref_1ud(struct brw_indirect ptr, GLint offset) +{ + return retype(deref_1f(ptr, offset), BRW_REGISTER_TYPE_UD); +} + static __inline struct brw_reg get_addr_reg(struct brw_indirect ptr) { return brw_address_reg(ptr.addr_subnr); diff --git a/src/mesa/drivers/dri/i965/brw_wm_glsl.c b/src/mesa/drivers/dri/i965/brw_wm_glsl.c index 1f1e32ee47e..58cdf72e372 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_glsl.c +++ b/src/mesa/drivers/dri/i965/brw_wm_glsl.c @@ -966,7 +966,7 @@ static void emit_wpos_xy(struct brw_wm_compile *c, /* TODO -- window_height - Y */ brw_MOV(p, dst[1], - negate(retype(src0[1], BRW_REGISTER_TYPE_UW))); + retype(src0[1], BRW_REGISTER_TYPE_UW)); } } @@ -1272,7 +1272,7 @@ static void brw_wm_emit_glsl(struct brw_wm_compile *c) brw_push_insn_state(p); brw_set_mask_control(p, BRW_MASK_DISABLE); brw_set_access_mode(p, BRW_ALIGN_1); - brw_ADD(p, deref_1uw(stack_index, 0), brw_ip_reg(), brw_imm_d(3*16)); + brw_ADD(p, deref_1ud(stack_index, 0), brw_ip_reg(), brw_imm_d(3*16)); brw_set_access_mode(p, BRW_ALIGN_16); brw_ADD(p, get_addr_reg(stack_index), get_addr_reg(stack_index), brw_imm_d(4)); @@ -1288,7 +1288,7 @@ static void brw_wm_emit_glsl(struct brw_wm_compile *c) brw_ADD(p, get_addr_reg(stack_index), get_addr_reg(stack_index), brw_imm_d(-4)); brw_set_access_mode(p, BRW_ALIGN_1); - brw_MOV(p, brw_ip_reg(), deref_1uw(stack_index, 0)); + brw_MOV(p, brw_ip_reg(), deref_1ud(stack_index, 0)); brw_set_access_mode(p, BRW_ALIGN_16); brw_pop_insn_state(p); |