gen8_dump_compile will be called indirectly by code common used by generations before and after the gen8 instruction format change. --- src/mesa/drivers/dri/i965/gen8_fs_generator.cpp | 4 ++-- src/mesa/drivers/dri/i965/gen8_generator.cpp | 7 ++++--- src/mesa/drivers/dri/i965/gen8_generator.h | 6 ++++-- src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp | 4 ++-- 4 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp index de06a97..d25da81 100644 --- a/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp +++ b/src/mesa/drivers/dri/i965/gen8_fs_generator.cpp @@ -1293,7 +1293,7 @@ gen8_fs_generator::generate_code(exec_list *instructions) } if (unlikely(INTEL_DEBUG & DEBUG_WM)) { - disassemble(stderr, last_native_inst_offset, next_inst_offset); + gen8_dump_compile(brw, store, last_native_inst_offset, next_inst_offset, stderr); foreach_list(node, &cfg->block_list) { bblock_link *link = (bblock_link *)node; @@ -1327,7 +1327,7 @@ gen8_fs_generator::generate_code(exec_list *instructions) * case you're doing that. */ if (0 && unlikely(INTEL_DEBUG & DEBUG_WM)) { - disassemble(stderr, 0, next_inst_offset); + gen8_dump_compile(brw, store, 0, next_inst_offset, stderr); } } diff --git a/src/mesa/drivers/dri/i965/gen8_generator.cpp b/src/mesa/drivers/dri/i965/gen8_generator.cpp index faca9c0..774df18 100644 --- a/src/mesa/drivers/dri/i965/gen8_generator.cpp +++ b/src/mesa/drivers/dri/i965/gen8_generator.cpp @@ -620,13 +620,14 @@ gen8_generator::HALT() return inst; } -void -gen8_generator::disassemble(FILE *out, int start, int end) +extern "C" void +gen8_dump_compile(struct brw_context *brw, void *assembly, + int start,int end, FILE *out) { bool dump_hex = false; for (int offset = start; offset < end; offset += 16) { - gen8_instruction *inst = &store[offset / 16]; + gen8_instruction *inst = &((gen8_instruction *)assembly)[offset / 16]; fprintf(stderr, "0x%08x: ", offset); if (dump_hex) { diff --git a/src/mesa/drivers/dri/i965/gen8_generator.h b/src/mesa/drivers/dri/i965/gen8_generator.h index b144809..b6ed24c 100644 --- a/src/mesa/drivers/dri/i965/gen8_generator.h +++ b/src/mesa/drivers/dri/i965/gen8_generator.h @@ -117,8 +117,6 @@ public: gen8_instruction *NOP(); /** @} */ - void disassemble(FILE *out, int start, int end); - protected: gen8_instruction *alu3(unsigned opcode, struct brw_reg dst, @@ -196,3 +194,7 @@ protected: void *mem_ctx; }; + +extern "C" void +gen8_dump_compile(struct brw_context *brw, void *assembly, + int start,int end, FILE *out); diff --git a/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp b/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp index 1d83312..0c54e6d 100644 --- a/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp +++ b/src/mesa/drivers/dri/i965/gen8_vec4_generator.cpp @@ -910,7 +910,7 @@ gen8_vec4_generator::generate_code(exec_list *instructions) } if (unlikely(debug_flag)) { - disassemble(stderr, last_native_inst_offset, next_inst_offset); + gen8_dump_compile(brw, store, last_native_inst_offset, next_inst_offset, stderr); } last_native_inst_offset = next_inst_offset; @@ -928,7 +928,7 @@ gen8_vec4_generator::generate_code(exec_list *instructions) * case you're doing that. */ if (0 && unlikely(debug_flag)) { - disassemble(stderr, 0, next_inst_offset); + gen8_dump_compile(brw, store, 0, next_inst_offset, stderr); } } -- 1.8.3.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev