diff options
author | Kenneth Graunke <[email protected]> | 2015-11-19 00:45:49 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2015-11-24 10:21:37 -0800 |
commit | 03d69496306d74b510be8931b05f391f0ce0ef06 (patch) | |
tree | 280daa944306900a95e93021137460bf9f5006b6 /src/mesa | |
parent | 5369efe311475f10b4fd6524710a3b3256856e08 (diff) |
Revert "i965: Combine assembly annotations if possible."
This reverts commit a280e83d71bb046098ed5380cb053318f9e8cf8e.
It breaks INTEL_DEBUG=fs output. For example,
glsl-fs-discard-01.shader_test has 11 instructions but only prints 5.
Acked-by: Matt Turner <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/drivers/dri/i965/intel_asm_annotation.c | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/src/mesa/drivers/dri/i965/intel_asm_annotation.c b/src/mesa/drivers/dri/i965/intel_asm_annotation.c index fdd605a7db0..59cc863268f 100644 --- a/src/mesa/drivers/dri/i965/intel_asm_annotation.c +++ b/src/mesa/drivers/dri/i965/intel_asm_annotation.c @@ -121,24 +121,6 @@ void annotate(const struct brw_device_info *devinfo, ann->block_start = cfg->blocks[annotation->cur_block]; } - if (bblock_end(cfg->blocks[annotation->cur_block]) == inst) { - ann->block_end = cfg->blocks[annotation->cur_block]; - annotation->cur_block++; - } - - /* Merge this annotation with the previous if possible. */ - struct annotation *prev = annotation->ann_count > 1 ? - &annotation->ann[annotation->ann_count - 2] : NULL; - if (prev != NULL && - ann->ir == prev->ir && - ann->annotation == prev->annotation && - ann->block_start == NULL && - prev->block_end == NULL) { - if (ann->block_end == NULL) - annotation->ann_count--; - return; - } - /* There is no hardware DO instruction on Gen6+, so since DO always * starts a basic block, we need to set the .block_start of the next * instruction's annotation with a pointer to the bblock started by @@ -150,6 +132,11 @@ void annotate(const struct brw_device_info *devinfo, if (devinfo->gen >= 6 && inst->opcode == BRW_OPCODE_DO) { annotation->ann_count--; } + + if (bblock_end(cfg->blocks[annotation->cur_block]) == inst) { + ann->block_end = cfg->blocks[annotation->cur_block]; + annotation->cur_block++; + } } void |