summaryrefslogtreecommitdiffstats
path: root/src/intel/compiler/brw_eu_validate.c
diff options
context:
space:
mode:
authorMatt Turner <[email protected]>2017-11-15 17:08:42 -0800
committerMatt Turner <[email protected]>2017-11-17 12:14:38 -0800
commit4f82b17287194ca7d10816f6cfe4712a3e0a03fc (patch)
tree7e2bb056e5c389643e9338e4359e5aae9ab49f92 /src/intel/compiler/brw_eu_validate.c
parentf80e97346b0da9fab3d60b46bdcf0a0d702f97c9 (diff)
i965: Rewrite disassembly annotation code
The old code used an array to store each "instruction group" (the new, better name than the old overloaded "annotation"), and required a memmove() to shift elements over in the array when we needed to split a group so that we could add an error message. This was confusing and difficult to get right, not the least of which was because the array has a tail sentinel not included in .ann_count. Instead use a linked list, a data structure made for efficient insertion. Acked-by: Samuel Iglesias Gonsálvez <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_eu_validate.c')
-rw-r--r--src/intel/compiler/brw_eu_validate.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/intel/compiler/brw_eu_validate.c b/src/intel/compiler/brw_eu_validate.c
index 647835af7ac..6ee6b4ffbe7 100644
--- a/src/intel/compiler/brw_eu_validate.c
+++ b/src/intel/compiler/brw_eu_validate.c
@@ -1258,7 +1258,7 @@ special_requirements_for_handling_double_precision_data_types(
bool
brw_validate_instructions(const struct gen_device_info *devinfo,
const void *assembly, int start_offset, int end_offset,
- struct annotation_info *annotation)
+ struct disasm_info *disasm)
{
bool valid = true;
@@ -1286,8 +1286,8 @@ brw_validate_instructions(const struct gen_device_info *devinfo,
CHECK(special_requirements_for_handling_double_precision_data_types);
}
- if (error_msg.str && annotation) {
- annotation_insert_error(annotation, src_offset, error_msg.str);
+ if (error_msg.str && disasm) {
+ disasm_insert_error(disasm, src_offset, error_msg.str);
}
valid = valid && error_msg.len == 0;
free(error_msg.str);