Xen Test Framework
Macros | Typedefs | Functions
exinfo.h File Reference

An encapsulation of an x86 exception with error code. More...

#include <arch/processor.h>
+ Include dependency graph for exinfo.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define EXINFO_EXPECTED   (1u << 31)
 
#define EXINFO_AVAIL1   (1u << 25)
 
#define EXINFO_AVAIL0   (1u << 24)
 
#define EXINFO(vec, ec)
 
#define EXINFO_SYM(exc, ec)   EXINFO(X86_EXC_ ## exc, ec)
 

Typedefs

typedef unsigned int exinfo_t
 Packed exception and error code information. More...
 

Functions

static unsigned int exinfo_vec (exinfo_t info)
 
static unsigned int exinfo_ec (exinfo_t info)
 

Detailed Description

An encapsulation of an x86 exception with error code.

Definition in file exinfo.h.

Macro Definition Documentation

◆ EXINFO_EXPECTED

#define EXINFO_EXPECTED   (1u << 31)

Definition at line 21 of file exinfo.h.

◆ EXINFO_AVAIL1

#define EXINFO_AVAIL1   (1u << 25)

Definition at line 23 of file exinfo.h.

◆ EXINFO_AVAIL0

#define EXINFO_AVAIL0   (1u << 24)

Definition at line 24 of file exinfo.h.

◆ EXINFO

#define EXINFO (   vec,
  ec 
)
Value:
(((vec) & 0xff) << 16) | ((ec) & 0xffff))
#define EXINFO_EXPECTED
Definition: exinfo.h:21

Definition at line 26 of file exinfo.h.

◆ EXINFO_SYM

#define EXINFO_SYM (   exc,
  ec 
)    EXINFO(X86_EXC_ ## exc, ec)

Definition at line 29 of file exinfo.h.

Typedef Documentation

◆ exinfo_t

typedef unsigned int exinfo_t

Packed exception and error code information.

  • Bottom 16 bits are error code
  • Next 8 bits are the entry vector
  • Next 2 bits are available for tests
  • Top bit it set to disambiguate #DE from no exception

Definition at line 19 of file exinfo.h.

Function Documentation

◆ exinfo_vec()

static unsigned int exinfo_vec ( exinfo_t  info)
inlinestatic

Definition at line 31 of file exinfo.h.

+ Here is the caller graph for this function:

◆ exinfo_ec()

static unsigned int exinfo_ec ( exinfo_t  info)
inlinestatic

Definition at line 36 of file exinfo.h.

+ Here is the caller graph for this function: