diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_ppc.c | 5 | ||||
| -rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_sse2.c | 4 | ||||
| -rw-r--r-- | src/gallium/drivers/trace/tr_dump.c | 2 | ||||
| -rw-r--r-- | src/gallium/include/pipe/p_inlines.h | 7 | ||||
| -rwxr-xr-x | src/gallium/state_trackers/python/retrace/parse.py | 2 | ||||
| -rw-r--r-- | src/mesa/main/ffvertex_prog.c | 2 | 
6 files changed, 20 insertions, 2 deletions
| diff --git a/src/gallium/auxiliary/tgsi/tgsi_ppc.c b/src/gallium/auxiliary/tgsi/tgsi_ppc.c index 2d6ad12ffb..3c4dd6e701 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_ppc.c +++ b/src/gallium/auxiliary/tgsi/tgsi_ppc.c @@ -1108,6 +1108,11 @@ static int  emit_instruction(struct gen_context *gen,                   struct tgsi_full_instruction *inst)  { + +   /* we don't handle saturation/clamping yet */ +   if (inst->Instruction.Saturate != TGSI_SAT_NONE) +      return 0; +     switch (inst->Instruction.Opcode) {     case TGSI_OPCODE_MOV:     case TGSI_OPCODE_SWZ: diff --git a/src/gallium/auxiliary/tgsi/tgsi_sse2.c b/src/gallium/auxiliary/tgsi/tgsi_sse2.c index cfec5cfc01..348357d1bc 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_sse2.c +++ b/src/gallium/auxiliary/tgsi/tgsi_sse2.c @@ -1747,6 +1747,10 @@ emit_instruction(     if (indirect_temp_reference(inst))        return FALSE; +   /* we don't handle saturation/clamping yet */ +   if (inst->Instruction.Saturate != TGSI_SAT_NONE) +      return FALSE; +     switch (inst->Instruction.Opcode) {     case TGSI_OPCODE_ARL:        FOR_EACH_DST0_ENABLED_CHANNEL( *inst, chan_index ) { diff --git a/src/gallium/drivers/trace/tr_dump.c b/src/gallium/drivers/trace/tr_dump.c index 643587ab42..7e2ccbcfdc 100644 --- a/src/gallium/drivers/trace/tr_dump.c +++ b/src/gallium/drivers/trace/tr_dump.c @@ -351,7 +351,7 @@ void trace_dump_call_begin_locked(const char *klass, const char *method)     trace_dump_indent(1);     trace_dump_writes("<call no=\'");     trace_dump_writef("%lu", call_no); -   trace_dump_writes("\' class =\'"); +   trace_dump_writes("\' class=\'");     trace_dump_escape(klass);     trace_dump_writes("\' method=\'");     trace_dump_escape(method); diff --git a/src/gallium/include/pipe/p_inlines.h b/src/gallium/include/pipe/p_inlines.h index cf176c9209..a5c1e8270a 100644 --- a/src/gallium/include/pipe/p_inlines.h +++ b/src/gallium/include/pipe/p_inlines.h @@ -63,6 +63,13 @@ pipe_buffer_map(struct pipe_screen *screen,     if(screen->buffer_map_range) {        unsigned offset = 0;        unsigned length = buf->size; + +      /* XXX: Actually we should be using/detecting DISCARD +       * instead of assuming that WRITE implies discard */ +      if((usage & PIPE_BUFFER_USAGE_CPU_WRITE) && +         !(usage & PIPE_BUFFER_USAGE_DISCARD)) +         usage |= PIPE_BUFFER_USAGE_CPU_READ; +        return screen->buffer_map_range(screen, buf, offset, length, usage);     }     else diff --git a/src/gallium/state_trackers/python/retrace/parse.py b/src/gallium/state_trackers/python/retrace/parse.py index b0f3e8a432..b08d368671 100755 --- a/src/gallium/state_trackers/python/retrace/parse.py +++ b/src/gallium/state_trackers/python/retrace/parse.py @@ -371,7 +371,7 @@ class Main:                      stream = GzipFile(arg, 'rt')                  elif arg.endswith('.bz2'):                      from bz2 import BZ2File -                    stream = BZ2File(arg, 'rt') +                    stream = BZ2File(arg, 'rU')                  else:                      stream = open(arg, 'rt')                  self.process_arg(stream, options) diff --git a/src/mesa/main/ffvertex_prog.c b/src/mesa/main/ffvertex_prog.c index 80dde4b5aa..8e21a27f89 100644 --- a/src/mesa/main/ffvertex_prog.c +++ b/src/mesa/main/ffvertex_prog.c @@ -1306,7 +1306,9 @@ static void build_fog( struct tnl_program *p )        input = swizzle1(register_input(p, VERT_ATTRIB_FOG), X);     } +   /* result.fog = {abs(f),0,0,1}; */     emit_op1(p, OPCODE_ABS, fog, WRITEMASK_X, input); +   emit_op1(p, OPCODE_MOV, fog, WRITEMASK_YZW, get_identity_param(p));  } | 
