background image

Vol. 3D 41-15

SGX INSTRUCTION REFERENCES

EAUG—Add a Page to an Initialized Enclave  

Instruction Operand Encoding

Description

This leaf function zeroes a page of EPC memory, associates the EPC page with an SECS page residing in the EPC, 
and stores the linear address and security attributes in the EPCM. As part of the association, the security attributes 
are configured to prevent access to the EPC page until a corresponding invocation of the EACCEPT leaf or EACCEPT-
COPY leaf confirms the addition of the new page into the enclave. This instruction can only be executed when 
current privilege level is 0.
RBX contains the effective address of a PAGEINFO structure while RCX contains the effective address of an EPC 
page. The table below provides additional information on the memory parameter of the EAUG leaf function.

EAUG Memory Parameter Semantics

The instruction faults if any of the following: 

EAUG Faulting Conditions

Concurrency Restrictions

Opcode/

Instruction

Op/En

64/32 

bit Mode 

Support

CPUID 

Feature 

Flag

Description

 EAX = 0DH

IR

V/V

SGX2

This leaf function adds a page to an initialized enclave.

ENCLS[EAUG]

Op/En

EAX

RBX

RCX

IR

EAUG (In)

Address of a SECINFO (In)

Address of the destination EPC page (In)

PAGEINFO

PAGEINFO.SECS

PAGEINFO.SRCPGE

PAGEINFO.SECINFO

EPCPAGE

Read access permit-

ted by Non Enclave 

Read/Write access permit-

ted by Enclave 

Must be zero

Read access permitted by 

Non Enclave 

Write access permitted by 

Enclave

The operands are not properly aligned.

Unsupported security attributes are set.

Refers to an invalid SECS.

Reference is made to an SECS that is locked by another thread.

The EPC page is locked by another thread.

RCX does not contain an effective address of an EPC page.

The EPC page is already valid.

The specified enclave offset is outside of the enclave address space.

The SECS has been initialized.

Table 41-7.  Concurrency Restrictions of EAUG with Other Intel® SGX Operations 1 of 2

Operation

EEXIT

EADD

EBLOCK

ECRE

ATE

EDBGRD/

WR

EENTER/

ERESUME

EEXTEND

EGETKEY

EINIT

ELDB/ELDU

EP

A

Param TCS SSA SECS Targ SECS Targ SECS SECS

Targ SECS TCS SSA SECS Targ SECS Param SECS SECS Targ VA SECS VA

EAUG

Targ

N

N

N

N

N

N

N

N

N

N

N

N

SECS

Y

N

N

Y

N

Y

Y

N

Y

N

N

Y

N