mirror of
https://github.com/elwrcl/intel-hard-graphics.git
synced 2026-11-01 03:18:02 +03:00
init
This commit is contained in:
12511 files changed
+6156641
No files matched your search
@@ -0,0 +1,51 @@
|
||||
/*
|
||||
* Copyright © 2017 Intel Corporation
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "intel_decoder.h"
|
||||
#include "intel_decoder_private.h"
|
||||
|
||||
#include "compiler/elk/elk_disasm.h"
|
||||
|
||||
static void
|
||||
ctx_disassemble_program_elk(struct intel_batch_decode_ctx *ctx,
|
||||
uint32_t ksp,
|
||||
const char *short_name,
|
||||
const char *name)
|
||||
{
|
||||
uint64_t addr = ctx->instruction_base + ksp;
|
||||
struct intel_batch_decode_bo bo = ctx_get_bo(ctx, true, addr);
|
||||
if (!bo.map)
|
||||
return;
|
||||
|
||||
fprintf(ctx->fp, "\nReferenced %s:\n", name);
|
||||
elk_disassemble_with_errors(ctx->elk, bo.map, 0, ctx->fp);
|
||||
|
||||
if (ctx->shader_binary) {
|
||||
int size = elk_disassemble_find_end(ctx->elk, bo.map, 0);
|
||||
|
||||
ctx->shader_binary(ctx->user_data, short_name, addr,
|
||||
bo.map, size);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
intel_batch_decode_ctx_init_elk(struct intel_batch_decode_ctx *ctx,
|
||||
const struct elk_isa_info *isa,
|
||||
const struct intel_device_info *devinfo,
|
||||
FILE *fp, enum intel_batch_decode_flags flags,
|
||||
const char *xml_path,
|
||||
struct intel_batch_decode_bo (*get_bo)(void *,
|
||||
bool,
|
||||
uint64_t),
|
||||
unsigned (*get_state_size)(void *, uint64_t,
|
||||
uint64_t),
|
||||
void *user_data)
|
||||
{
|
||||
intel_batch_decode_ctx_init(ctx, devinfo, fp, flags, xml_path,
|
||||
get_bo, get_state_size, user_data);
|
||||
ctx->elk = isa;
|
||||
ctx->disassemble_program = ctx_disassemble_program_elk;
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user