background image

36-72 Vol. 3C

INTEL® PROCESSOR TRACE

17d

VM entry, MSR load list sets TraceEn=1 0

1

1

See WRMSR cases for 

packets on enable. 

FUP/TIP.PGE IP is 

VMCSg.LIP

17f

VM entry, FilterEN 0->1

0

1

1

*PIP if OF=1, and “Conceal 

VM entries from Intel PT” 

execution control = 0;

*MODE.Exec if the value is 

different, since last TIP.PGD 

PIP(GuestCR3, NR=1)?, 

MODE.Exec?, 

TIP.PGE(VMCSg.LIP)

17j

VM entry, ContextEN 0->1

0

1

1

*MODE.Exec if the value is 

different, since last TIP.PGD 

MODE.Exec, 

TIP.PGE(VMCSg.LIP)

17g

VM entry, MSR list clears TraceEn=0 

1

0

0

*PIP if OF=1, and “Conceal 

VM entries from Intel PT” 

execution control = 0;

PIP(GuestCR3, NR=1)?, 

TIP.PGD

17h

VM entry

1

0

1

*PIP if OF=1, and “Conceal 

VM entries from Intel PT” 

execution control = 0;

*TraceStop if VMCSg.LIP is 

in a TraceStop region

PIP(GuestCR3, NR=1)?, 

TIP.PGD(VMCSg.LIP), 

TraceStop?

17i

VM entry

1

1

1

*PIP if OF=1, and “Conceal 

VM entries from Intel PT” 

execution control = 0;

*MODE.Exec if the value is 

different, since last TIP.PGD 

PIP(GuestCR3, NR=1)?, 

MODE.Exec, 

TIP(VMCSg.LIP)

20a

EENTER/ERESUME to non-debug 

enclave

0

0

0

None

20c

EENTER/ERESUME to non-debug 

enclave

1

0

0

FUP(CLIP),  TIP.PGD()

21a

EEXIT from non-debug enclave

0

0

D.C.

None

21b

EEXIT from non-debug enclave

0

1

1

*MODE.Exec if the value is 

different, since last TIP.PGD 

MODE.Exec?, 

TIP.PGE(BLIP)

22a

AEX/EEE from non-debug enclave

0

0

D.C.

None

22b

AEX/EEE from non-debug enclave

0

1

1

*MODE.Exec if the value is 

different, since last TIP.PGD 

MODE.Exec?, 

TIP.PGE(AEP.LIP)

23a

EENTER/ERESUME to debug enclave

0

0

D.C.

None

23b

EENTER/ERESUME to debug enclave

0

1

1

*MODE.Exec if the value is 

different, since last TIP.PGD 

MODE.Exec?, 

TIP.PGE(BLIP)

23c

EENTER/ERESUME to debug enclave

1

0

0

FUP(CLIP), TIP.PGD()

23d

EENTER/ERESUME to debug enclave

0

0

1

*TraceStop if BLIP is in a 

TraceStop region

FUP(CLIP), TIP.PGD(BLIP), 

TraceStop?

23e

EENTER/ERESUME to debug enclave

1

1

1

FUP(CLIP), TIP(BLIP)

24f

EEXIT from debug enclave

0

0

D.C.

None

24b

EEXIT from debug enclave

0

1

1

*MODE.Exec if the value is 

different, since last TIP.PGD 

MODE.Exec?, 

TIP.PGE(BLIP)

24d

EEXIT from debug enclave

1

0

1

*TraceStop if BLIP is in a 

TraceStop region

FUP(CLIP), TIP.PGD(BLIP), 

TraceStop?

Table 36-50. Packet Generation under Different Enable Conditions (Contd.)

Case

Operation

PktEn 

Before

PktEn 

After

CntxEn 

After

Other Dependencies

Packets Output