X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?p=palacios.git;a=blobdiff_plain;f=misc%2Fdecoder_test%2FXED2%2Fdoc%2Fhtml%2Fxed-decoded-inst_8h.html;fp=misc%2Fdecoder_test%2FXED2%2Fdoc%2Fhtml%2Fxed-decoded-inst_8h.html;h=0000000000000000000000000000000000000000;hp=4d1523e64b1f31d34d69175f4c2ea60f40691802;hb=7a6cd49101201e207daf7113a9048193835cebaf;hpb=320320a1c8681f2d8258a03dd087b3aed18b48a1 diff --git a/misc/decoder_test/XED2/doc/html/xed-decoded-inst_8h.html b/misc/decoder_test/XED2/doc/html/xed-decoded-inst_8h.html deleted file mode 100644 index 4d1523e..0000000 --- a/misc/decoder_test/XED2/doc/html/xed-decoded-inst_8h.html +++ /dev/null @@ -1,311 +0,0 @@ - - -XED2: XED2 User Guide - Thu May 15 03:15:09 2008 - - - - -
-
-
-
-

xed-decoded-inst.h File Reference


Detailed Description

-
Author:
Mark Charney <mark.charney@intel.com>
- -

-Definition in file xed-decoded-inst.h. -

-#include "xed-common-hdrs.h"
-#include "xed-common-defs.h"
-#include "xed-portability.h"
-#include "xed-util.h"
-#include "xed-types.h"
-#include "xed-operand-values-interface.h"
-#include "xed-inst.h"
-#include "xed-flags.h"
-#include "xed-encoder-gen-defs.h"
- -

-Go to the source code of this file. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Data Structures

struct  xed_decoded_inst_s
 The main container for instructions. More...

IFORM handling

#define XED_MASK_IFORM(x)   ((x) & 0xFF)
static XED_INLINE xed_iform_enum_t xed_decoded_inst_get_iform_enum (const xed_decoded_inst_t *p)
 Return the instruction iform enum of type xed_iform_enum_t .
static XED_INLINE unsigned int xed_decoded_inst_get_iform_enum_dispatch (const xed_decoded_inst_t *p)
 Return the instruction zero-based iform number based on masking the corresponding xed_iform_enum_t.
static XED_INLINE xed_uint_t xed_decoded_inst_get_old_iform (const xed_decoded_inst_t *p)
 DEPRECATED Return the instruction iform number.
XED_DLL_EXPORT xed_uint32_t xed_iform_max_per_iclass (xed_iclass_enum_t iclass)
 Return the maximum number of iforms for a particular iclass.

xed_decoded_inst_t Operand Field Details

XED_DLL_EXPORT xed_bool_t xed_decoded_inst_conditionally_writes_registers (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_reg_enum_t xed_decoded_inst_get_base_reg (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_int32_t xed_decoded_inst_get_branch_displacement (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_branch_displacement_width (const xed_decoded_inst_t *p)
 Result in BYTES.
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_branch_displacement_width_bits (const xed_decoded_inst_t *p)
 Result in BITS.
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_immediate_is_signed (const xed_decoded_inst_t *p)
 Return true if the first immediate (IMM0) is signed.
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_immediate_width (const xed_decoded_inst_t *p)
 Return the immediate width in BYTES.
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_immediate_width_bits (const xed_decoded_inst_t *p)
 Return the immediate width in BITS.
XED_DLL_EXPORT xed_reg_enum_t xed_decoded_inst_get_index_reg (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_int64_t xed_decoded_inst_get_memory_displacement (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_memory_displacement_width (const xed_decoded_inst_t *p, unsigned int mem_idx)
 Result in BYTES.
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_memory_displacement_width_bits (const xed_decoded_inst_t *p, unsigned int mem_idx)
 Result in BITS.
XED_DLL_EXPORT unsigned int xed_decoded_inst_get_memory_operand_length (const xed_decoded_inst_t *p, unsigned int memop_idx)
static XED_INLINE xed_reg_enum_t xed_decoded_inst_get_reg (const xed_decoded_inst_t *p, xed_operand_enum_t reg_operand)
 Return the specified register operand.
XED_DLL_EXPORT const xed_simple_flag_txed_decoded_inst_get_rflags_info (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_get_scale (const xed_decoded_inst_t *p, unsigned int mem_idx)
static XED_INLINE xed_uint8_t xed_decoded_inst_get_second_immediate (const xed_decoded_inst_t *p)
 Return the second immediate.
XED_DLL_EXPORT xed_reg_enum_t xed_decoded_inst_get_seg_reg (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_int32_t xed_decoded_inst_get_signed_immediate (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_uint64_t xed_decoded_inst_get_unsigned_immediate (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_is_prefetch (const xed_decoded_inst_t *p)
 Returns true if the instruction is a prefetch.
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_mem_read (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_mem_written (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_mem_written_only (const xed_decoded_inst_t *p, unsigned int mem_idx)
XED_DLL_EXPORT xed_uint_t xed_decoded_inst_number_of_memory_operands (const xed_decoded_inst_t *p)
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_uses_rflags (const xed_decoded_inst_t *p)

xed_decoded_inst_t Printers

XED_DLL_EXPORT void xed_decoded_inst_dump (const xed_decoded_inst_t *p, char *buf, int buflen)
 Print out all the information about the decoded instruction to the buffer buf whose length is maximally buflen.
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_dump_att_format (const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)
 Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands).
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_dump_att_format_context (const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)
 Print the instructions with the destination operand on the right, with several exceptions (bound, invlpga, enter, and other instructions with two immediate operands).
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_dump_intel_format (const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)
 Print the instructions with the destination on the left.
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_dump_intel_format_context (const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address, void *context)
 Print the instructions with the destination on the left.
XED_DLL_EXPORT xed_bool_t xed_decoded_inst_dump_xed_format (const xed_decoded_inst_t *p, char *buf, int buflen, xed_uint64_t runtime_address)

modes

static XED_INLINE xed_uint_t xed_decoded_inst_get_address_mode (const xed_decoded_inst_t *p)
static XED_INLINE xed_uint_t xed_decoded_inst_get_mode (const xed_decoded_inst_t *p)
static XED_INLINE xed_uint_t xed_decoded_inst_get_stack_address_mode (const xed_decoded_inst_t *p)

xed_decoded_inst_t High-level accessors

XED_DLL_EXPORT xed_uint32_t xed_decoded_inst_get_attribute (const xed_decoded_inst_t *p, xed_attribute_enum_t attr)
 Returns 1 if the attribute is defined for this instruction.
XED_DLL_EXPORT xed_uint32_t xed_decoded_inst_get_attributes (const xed_decoded_inst_t *p)
 Returns the attribute bitvector.
static XED_INLINE xed_category_enum_t xed_decoded_inst_get_category (const xed_decoded_inst_t *p)
 Return the instruction category enumeration.
static XED_INLINE xed_extension_enum_t xed_decoded_inst_get_extension (const xed_decoded_inst_t *p)
 Return the instruction extension enumeration.
static XED_INLINE xed_iclass_enum_t xed_decoded_inst_get_iclass (const xed_decoded_inst_t *p)
 Return the instruction class enumeration.
static XED_INLINE const xed_inst_txed_decoded_inst_inst (const xed_decoded_inst_t *p)
 Return the xed_inst_t structure for this instruction.
static XED_INLINE xed_bool_t xed_decoded_inst_valid (const xed_decoded_inst_t *p)
 Return true if the instruction is valid.

xed_decoded_inst_t Length

static XED_INLINE xed_uint_t xed_decoded_inst_get_length (const xed_decoded_inst_t *p)
 Return the length of the decoded instruction in bytes.

xed_decoded_inst_t User Data Field

static XED_INLINE xed_uint64_t xed_decoded_inst_get_user_data (xed_decoded_inst_t *p)
 Return a user data field for arbitrary use by the user after decoding.
static XED_INLINE void xed_decoded_inst_set_user_data (xed_decoded_inst_t *p, xed_uint64_t new_value)
 Modify the user data field.

xed_decoded_inst_t Operands: Number and Length

static XED_INLINE unsigned int xed_decoded_inst_noperands (const xed_decoded_inst_t *p)
 Return the number of operands.
XED_DLL_EXPORT unsigned int xed_decoded_inst_operand_length (const xed_decoded_inst_t *p, unsigned int operand_index)
 Return the length in bytes of the operand_index'th operand.

xed_decoded_inst_t Operands array access

static XED_INLINE xed_operand_values_txed_decoded_inst_operands (xed_decoded_inst_t *p)
 Obtain a non-constant pointer to the operands.
static XED_INLINE const xed_operand_values_txed_decoded_inst_operands_const (const xed_decoded_inst_t *p)
 Obtain a constant pointer to the operands.

xed_decoded_inst_t Modification

XED_DLL_EXPORT void xed_decoded_inst_set_branch_displacement (xed_decoded_inst_t *p, xed_int32_t disp, xed_uint_t length_bytes)
 Set the branch displacement using a BYTE length.
XED_DLL_EXPORT void xed_decoded_inst_set_branch_displacement_bits (xed_decoded_inst_t *p, xed_int32_t disp, xed_uint_t length_bits)
 Set the branch displacement a BITS length.
XED_DLL_EXPORT void xed_decoded_inst_set_immediate_signed (xed_decoded_inst_t *p, xed_int32_t x, xed_uint_t length_bytes)
 Set the signed immediate a BYTE length.
XED_DLL_EXPORT void xed_decoded_inst_set_immediate_signed_bits (xed_decoded_inst_t *p, xed_int32_t x, xed_uint_t length_bits)
 Set the signed immediate a BITS length.
XED_DLL_EXPORT void xed_decoded_inst_set_immediate_unsigned (xed_decoded_inst_t *p, xed_uint64_t x, xed_uint_t length_bytes)
 Set the unsigned immediate a BYTE length.
XED_DLL_EXPORT void xed_decoded_inst_set_immediate_unsigned_bits (xed_decoded_inst_t *p, xed_uint64_t x, xed_uint_t length_bits)
 Set the unsigned immediate a BITS length.
XED_DLL_EXPORT void xed_decoded_inst_set_memory_displacement (xed_decoded_inst_t *p, xed_int64_t disp, xed_uint_t length_bytes)
 Set the memory displacement using a BYTE length.
XED_DLL_EXPORT void xed_decoded_inst_set_memory_displacement_bits (xed_decoded_inst_t *p, xed_int64_t disp, xed_uint_t length_bits)
 Set the memory displacement a BITS length.
XED_DLL_EXPORT void xed_decoded_inst_set_scale (xed_decoded_inst_t *p, xed_uint_t scale)

xed_decoded_inst_t Initialization

XED_DLL_EXPORT void xed_decoded_inst_zero (xed_decoded_inst_t *p)
 Zero the decode structure completely.
XED_DLL_EXPORT void xed_decoded_inst_zero_keep_mode (xed_decoded_inst_t *p)
 Zero the decode structure, but preserve the existing machine state/mode information.
XED_DLL_EXPORT void xed_decoded_inst_zero_keep_mode_from_operands (xed_decoded_inst_t *p, const xed_operand_values_t *operands)
 Zero the decode structure, but copy the existing machine state/mode information from the supplied operands pointer.
XED_DLL_EXPORT void xed_decoded_inst_zero_set_mode (xed_decoded_inst_t *p, const xed_state_t *dstate)
 Zero the decode structure, but set the machine state/mode information.

Defines

#define _XED_DECODER_STATE_H_

Typedefs

typedef XED_DLL_EXPORT xed_decoded_inst_s xed_decoded_inst_t
 The main container for instructions.
-


Define Documentation

-

- - - - -
- - - - -
#define _XED_DECODER_STATE_H_
-
- - - - - -
-   - - -

- -

-Definition at line 37 of file xed-decoded-inst.h.

-

- - - - -
- - - - - - - - - -
#define XED_MASK_IFORM  )    ((x) & 0xFF)
-
- - - - - -
-   - - -

- -

-Definition at line 235 of file xed-decoded-inst.h.

-


Generated on Thu May 15 03:15:09 2008 for XED2 by  - -doxygen 1.4.6
- -