A return code is provided in register 15 and can contain the following
values:
- 0
- The environment was activated and the routine called.
- 4
- The function code is not valid.
- 12
- The indicated environment was initialized for main routines.
No routine was executed.
- 16
- The token is not valid.
- 28
- The enclave was terminated but the process level persists.
This
value indicates the enclave was terminated while the process was retained.
This can occur due to a STOP or EXIT statement (or an exit() function)
being issued or due to an unhandled condition. The sub_ret_code, sub_reason_code, and sub_feedback_code indicate this
action.
- 32
- The function_pointer passed is not a valid function pointer.
- 48
- CELQPIPI was called from a non-64-bit environment.
- 52
- The function_pointer could not be obtained from the routine_addr.