Functionality wise, hardware features can be assured using the enclave attributes. An enclave will fail at initialization if the platform does not support the requested attributes. However, some implementations may not support the same processor features. Software should consider that certain attribute may not be supported in all implementations before using these features inside the enclave.
For more complete information about compiler optimizations, see our Optimization Notice.