o
    ÅÙ¾i.  ã                   @   s.   d dl Z d dlmZ e jdejfdd„ƒZdS )é    NÚKc	              	   C   s
  t  d¡}	t  | |	|  t  d|¡ ¡}
t  ||	|  t  d|¡ ¡}|d }|d }t  ||	|  ||  ¡|? d@ }t  |d¡| }| t j¡}t  |d|d t  d|¡ ¡}|| }t  ||
|¡}
t  |||¡}t  ||	|  | |
¡ t  ||	|  | |¡ d S )Nr   é    é   )	ÚtlÚ
program_idÚloadÚarangeÚcumsumÚtoÚint1ÚwhereÚstore)ÚYvÚYiÚBitMaskÚ	stride_bmÚ	stride_bnÚRetYvÚRetYiÚsentinelr   Úpid_mÚyvÚyiÚdivÚremÚactive_bitsÚ
exc_cumsumÚactive_flagsÚ
rev_arangeÚ
write_indx© r    úh/home/ubuntu/.local/lib/python3.10/site-packages/triton_kernels/compaction_details/_masked_compaction.pyÚ_masked_compaction   s   
"r"   )ÚtritonÚtriton.languageÚlanguager   ÚjitÚ	constexprr"   r    r    r    r!   Ú<module>   s    