
    
9j                        S SK Jr  S SKJr  S SKJr  S SKJr  S SKJr  SS jr	\R                  " SS	S
S5      rS rSS jrg)    )annotations)_kernel)_memory_range)join)searchNc                J    Uc  [         R                  " X5      $ [        S5      e)Nz'Only supported for `max_work` is `None`)r   may_share_boundsNotImplementedError)abmax_works      R/home/wildlama/miniconda3/lib/python3.13/site-packages/cupy/_misc/memory_ranges.pymay_share_memoryr   	   s%    --a33
G
HH    zT xz
uint64 outzout = (unsigned long long)(&x)cupy_get_memory_ptrsc                    U R                   R                  S:w  a  [        U 5      $ [        R                  " [        U R
                  5      [        U R                  5      /5      $ )Nc)dtypekind_get_memory_ptrs_kernelr   concatenaterealimag)xs    r   _get_memory_ptrsr      sM    ww||s&q))''  r   c                   XL a  U R                   S:w  a  gUS:X  a  [        R                  " X5      $ US;   a  [        U 5      R	                  5       n[        U5      R                  SS5      nUR                  5         [        R                  " X4S5      n[        R                  " X4S5      n[        XV:g  R                  5       5      $ [        S	5      e)
Nr   TMAY_SHARE_BOUNDS)NMAY_SHARE_EXACT   leftrightz%Not supported for integer `max_work`.)sizer   r	   r   ravelreshapesortr   searchsortedboolanyr
   )r   r   r   a_ptrsb_ptrsr   ys          r   shares_memoryr-       s    v!&&A+%%--a33,,!!$**,!!$,,R378QVLLN##
E
FFr   )N)
__future__r   
cupy._corer   r   cupy._manipulationr   cupy._sortingr   r   ElementwiseKernelr   r   r-    r   r   <module>r4      sC    "  $ #  I "33	<$ Gr   