o
    !Æ&iÈ  ã                   @   sl   d dl mZ d dlmZ dd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
eejj_dd„ Zeƒ ZdS )é    )Úc_uint)Úffic                   C   s   t dƒ‚)a<  
    Initialize the LLVM core (deprecated).

    This function is deprecated and will raise an error when called.
    LLVM initialization is now handled automatically and no longer
    requires explicit initialization calls.

    Raises:
        RuntimeError: Always raised as this function is no longer needed.
    zùllvmlite.binding.initialize() is deprecated and will be removed. LLVM initialization is now handled automatically. Please remove calls to this function from your code and check for other behavioral changes that may have occurred due to LLVM updates.)ÚRuntimeError© r   r   úDC:\wamp64\www\opt\env\Lib\site-packages\llvmlite/binding/initfini.pyÚ
initialize   s   ÿr   c                   C   s"   t j ¡  t j ¡  t j ¡  dS )zn
    Initialize all targets. Necessary before targets can be looked up
    via the :class:`Target` class.
    N)r   ÚlibZLLVMPY_InitializeAllTargetInfosZLLVMPY_InitializeAllTargetsZLLVMPY_InitializeAllTargetMCsr   r   r   r   Úinitialize_all_targets   s   

r	   c                   C   ó   t j ¡  dS )zÅ
    Initialize all code generators. Necessary before generating
    any assembly or machine code via the :meth:`TargetMachine.emit_object`
    and :meth:`TargetMachine.emit_assembly` methods.
    N)r   r   ZLLVMPY_InitializeAllAsmPrintersr   r   r   r   Úinitialize_all_asmprinters#   s   r   c                   C   r
   )z_
    Initialize the native (host) target.  Necessary before doing any
    code generation.
    N)r   r   ZLLVMPY_InitializeNativeTargetr   r   r   r   Úinitialize_native_target,   s   r   c                   C   r
   )z,
    Initialize the native ASM printer.
    N)r   r   Z!LLVMPY_InitializeNativeAsmPrinterr   r   r   r   Úinitialize_native_asmprinter4   ó   r   c                   C   r
   )z+
    Initialize the native ASM parser.
    N)r   r   Z LLVMPY_InitializeNativeAsmParserr   r   r   r   Úinitialize_native_asmparser;   r   r   c                   C   s   t j ¡  d S )N)r   r   ZLLVMPY_Shutdownr   r   r   r   ÚshutdownB   s   r   c                  C   s8   g } t j ¡ }|r|  |d@ ¡ |dL }|s	tt| ƒƒS )Néÿ   é   )r   r   ÚLLVMPY_GetVersionInfoÚappendÚtupleÚreversed)ÚvÚxr   r   r   Ú_version_infoL   s   
þr   N)Úctypesr   Zllvmlite.bindingr   r   r	   r   r   r   r   r   r   r   Úrestyper   Zllvm_version_infor   r   r   r   Ú<module>   s    
	

	