module documentation

Provides the CCompilerOpt class, used for handling the CPU/hardware optimization, starting from parsing the command arguments, to managing the relation between the CPU baseline and dispatch-able features, also generating the required C headers and ending with compiling the sources with proper compiler's flags.

CCompilerOpt doesn't provide runtime detection for the CPU features, instead only focuses on the compiler side, but it creates abstract C headers that can be used later for the final runtime dispatching process.

Class CCompilerOpt A helper class for CCompiler aims to provide extra build options to effectively control of compiler optimizations that are directly related to CPU features.
Function new_ccompiler_opt Create a new instance of 'CCompilerOpt' and generate the dispatch header which contains the #definitions and headers of platform-specific instruction-sets for the enabled CPU baseline and dispatch-able features.
Constant NPY_CXX_FLAGS Undocumented
Class _Cache An abstract class handles caching functionality, provides two levels of caching, in-memory by share instances attributes among each other and by store attributes into files.
Class _CCompiler A helper class for CCompilerOpt containing all utilities that related to the fundamental compiler's functions.
Class _Config An abstract class holds all configurable attributes of CCompilerOpt, these class attributes can be used to change the default behavior of CCompilerOpt in order to fit other requirements.
Class _Distutils A helper class that provides a collection of fundamental methods implemented in a top of Python and NumPy Distutils.
Class _Feature A helper class for CCompilerOpt that managing CPU features.
Class _Parse A helper class that parsing main arguments of CCompilerOpt, also parsing configuration statements in dispatch-able sources.
Variable _share_cache Undocumented
def new_ccompiler_opt(compiler, dispatch_hpath, **kwargs): (source)

Create a new instance of 'CCompilerOpt' and generate the dispatch header which contains the #definitions and headers of platform-specific instruction-sets for the enabled CPU baseline and dispatch-able features.

Parameters
compiler:CCompiler instance
dispatch_hpath:strpath of the dispatch header
**kwargs:passed as-is to CCompilerOpt(...)
Returns
new instance of CCompilerOpt
NPY_CXX_FLAGS: list[str] = (source)

Undocumented

Value
['-std=c++11', '-D__STDC_VERSION__=0', '-fno-exceptions', '-fno-rtti']
_share_cache: dict = (source)

Undocumented