pt_insn_get_image - Man Page

get/set an Intel(R) Processor Trace instruction flow or block decoder’s traced memory image descriptor


#include <intel-pt.h>

struct pt_image *pt_insn_get_image(struct pt_insn_decoder *decoder);

struct pt_image *pt_blk_get_image(struct pt_block_decoder *decoder);

int pt_insn_set_image(struct pt_insn_decoder *decoder,

                      struct pt_image *image);

int pt_blk_set_image(struct pt_block_decoder *decoder,

                     struct pt_image *image);

Link with -lipt.


pt_insn_get_image() and pt_blk_get_image() return the traced memory image descriptor that decoder uses for reading instruction memory. See pt_image_alloc(3). Every decoder comes with a default pt_image* object that is initially empty and that will automatically be destroyed when the decoder is freed.

pt_insn_set_image() and pt_blk_set_image() set the traced memory image descriptor that decoder uses for reading instruction memory. If the image argument is NULL, sets decoder’s image to be its default image. The user is responsible for freeing the pt_image object that image points to when it is no longer needed.

Return Value

pt_insn_get_image() and pt_blk_get_image() return a pointer to decoder’s pt_image object. The returned pointer is NULL if the decoder argument is NULL.

pt_insn_set_image() and pt_blk_set_image() return zero on success or a negative pt_error_code enumeration constant in case of an error.



The decoder argument is NULL.


One pt_image object must not be shared between multiple decoders. Use pt_image_copy(3) to copy a common image.

See Also

pt_insn_alloc_decoder(3), pt_insn_free_decoder(3), pt_insn_next(3), pt_blk_alloc_decoder(3), pt_blk_free_decoder(3), pt_blk_next(3)

Referenced By

pt_blk_alloc_decoder(3), pt_image_add_file(3), pt_image_alloc(3), pt_image_remove_by_filename(3), pt_image_set_callback(3), pt_insn_alloc_decoder(3).

The man pages pt_blk_get_image(3), pt_blk_set_image(3) and pt_insn_set_image(3) are aliases of pt_insn_get_image(3).