§
    ƒÛg	  ã                   óÂ   — d dl Z d dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
 d dlZd dlmZ  e	d¦  «         G d„ de
¦  «        ¦   «         Zed	k    r ej        ¦   «          dS dS )
é    N)ÚcudaÚ	vectorize)Útypes)Úskip_on_cudasimÚCUDATestCase)Únumpy_supportz!pickling not supported in CUDASIMc                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )Ú
TestPicklec                 ó|  — t          j        dg¦  «        } |d         |¦  «        }t          j        t          j        |¦  «        ¦  «        }~ |d         |¦  «        }t           j                             ||¦  «         ~t          j        t          j        |¦  «        ¦  «        }~ |d         |¦  «        }t           j                             ||¦  «         ~t          j        t          j        |d         ¦  «        ¦  «        }~|                      |j        d¦  «         |                      |j	        d¦  «         d S )Néd   )é   r   )é   é   )r   r   r   )r   r   r   )
ÚnpÚarrayÚpickleÚloadsÚdumpsÚtestingÚassert_equalÚassertEqualÚgriddimÚblockdim)	ÚselfÚcalleeÚarrÚexpectedÚfoo1Úgot1Úfoo2Úgot2Úfoo3s	            ú\/granary/edev/quantum/lib/python3.11/site-packages/numba/cuda/tests/cudapy/test_serialize.pyÚ
check_callzTestPickle.check_call   s  € ÝŒh˜�u‰oŒoˆØ�6˜$”< Ñ$Ô$ˆõ Œ|�FœL¨Ñ0Ô0Ñ1Ô1ˆØàˆt�DŒz˜#‰ŒˆÝ
Œ
×Ò  hÑ/Ô/Ð/Øõ Œ|�FœL¨Ñ.Ô.Ñ/Ô/ˆØàˆt�DŒz˜#‰ŒˆÝ
Œ
×Ò  hÑ/Ô/Ð/Øõ Œ|�FœL¨¨d¬Ñ4Ô4Ñ5Ô5ˆØØ×Ò˜œ yÑ1Ô1Ð1Ø×Ò˜œ¨	Ñ2Ô2Ð2Ð2Ð2ó    c                 ó¬   ‡— t          j        d¬¦  «        d„ ¦   «         Št          j        d¦  «        ˆfd„¦   «         }|                      |¦  «         d S )NT©Údevicec                 ó   — | dz   S ©Nr   © ©Úas    r#   Úinnerz2TestPickle.test_pickling_jit_typing.<locals>.inner(   ó   € à�q‘5ˆLr%   zvoid(intp[:])c                 ó0   •—  ‰| d         ¦  «        | d<   d S ©Nr   r+   ©r   r.   s    €r#   Úfooz0TestPickle.test_pickling_jit_typing.<locals>.foo,   ó   ø€ à�U˜3˜qœ6‘]”]ˆC�‰FˆFˆFr%   ©r   Újitr$   ©r   r3   r.   s     @r#   Útest_pickling_jit_typingz#TestPickle.test_pickling_jit_typing'   st   ø€ Ý	Œ˜Ð	Ñ	Ô	ð	ð 	ñ 
Ô	ð	õ 
Œ�/Ñ	"Ô	"ð	#ð 	#ð 	#ð 	#ñ 
#Ô	"ð	#ð 	�Š˜ÑÔÐÐÐr%   c                 óœ   ‡— t          j        d¬¦  «        d„ ¦   «         Št           j        ˆfd„¦   «         }|                      |¦  «         d S )NTr'   c                 ó   — | dz   S r*   r+   r,   s    r#   r.   z+TestPickle.test_pickling_jit.<locals>.inner4   r/   r%   c                 ó0   •—  ‰| d         ¦  «        | d<   d S r1   r+   r2   s    €r#   r3   z)TestPickle.test_pickling_jit.<locals>.foo8   r4   r%   r5   r7   s     @r#   Útest_pickling_jitzTestPickle.test_pickling_jit2   sk   ø€ å	Œ˜Ð	Ñ	Ô	ð	ð 	ñ 
Ô	ð	õ 
Œð	#ð 	#ð 	#ð 	#ñ 
Œð	#ð 	�Š˜ÑÔÐÐÐr%   c                 ó  — t          ddgd¬¦  «        d„ ¦   «         }t          j        t          j        ¦  «        }t          j        d|¬¦  «        } ||¦  «        }t          j        t          j	        |¦  «        ¦  «        }~ ||¦  «        }t
          j
                             ||¦  «         t          j        t          j	        |¦  «        ¦  «        }~ ||¦  «        }t
          j
                             ||¦  «         d S )Nz
intp(intp)zfloat64(float64)r   )Útargetc                 ó   — | dz  S )Né   r+   )Úxs    r#   Ú	cuda_vectz5TestPickle.test_pickling_vectorize.<locals>.cuda_vect?   r/   r%   é
   )Údtype)r   r   Úas_dtyper   Úintpr   Úaranger   r   r   r   r   )	r   rB   ÚnptyÚaryr   r   r   r    r!   s	            r#   Útest_pickling_vectorizez"TestPickle.test_pickling_vectorize>   sí   € Ý	�LÐ"4Ð5¸fÐ	EÑ	EÔ	Eð	ð 	ñ 
FÔ	Eð	õ Ô%¥e¤jÑ1Ô1ˆåŒi˜ $Ð'Ñ'Ô'ˆØ�9˜S‘>”>ˆåŒ|�FœL¨Ñ3Ô3Ñ4Ô4ˆØØˆt�C‰yŒyˆÝ
Œ
×Ò ¨$Ñ/Ô/Ð/åŒ|�FœL¨Ñ.Ô.Ñ/Ô/ˆØØˆt�C‰yŒyˆÝ
Œ
×Ò ¨$Ñ/Ô/Ð/Ð/Ð/r%   N)Ú__name__Ú
__module__Ú__qualname__r$   r8   r<   rJ   r+   r%   r#   r
   r
   
   sP   € € € € € ð3ð 3ð 3ð4	ð 	ð 	ð
ð 
ð 
ð0ð 0ð 0ð 0ð 0r%   r
   Ú__main__)r   Únumpyr   Únumbar   r   Ú
numba.corer   Únumba.cuda.testingr   r   ÚunittestÚnumba.npr   r
   rK   Úmainr+   r%   r#   ú<module>rV      sè   ðØ €€€Ø Ð Ð Ð Ø !Ð !Ð !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð Ø <Ð <Ð <Ð <Ð <Ð <Ð <Ð <Ø €€€Ø "Ð "Ð "Ð "Ð "Ð "ð €Ð4Ñ5Ô5ðF0ð F0ð F0ð F0ð F0�ñ F0ô F0ñ 6Ô5ðF0ðR ˆzÒÐØ€H„M�O„O€O€O€Oð Ðr%   