Files
boc/aamos-command-center/target/release/deps/libzeroize-54ca2aa07f4f5310.rlib
T

1210 lines
319 KiB
Plaintext
Raw Normal View History

!<arch>
/ 0 0 0 0 282 `
õ&õ&õ&_ZN40_$LT$str$u20$as$u20$zeroize..Zeroize$GT$7zeroize17h791ca4921db57d1aE_ZN58_$LT$alloc..string..String$u20$as$u20$zeroize..Zeroize$GT$7zeroize17h173b9eb3bc1ed8fcE_ZN65_$LT$alloc..boxed..Box$LT$str$GT$$u20$as$u20$zeroize..Zeroize$GT$7zeroize17hc0c5457cc2566e3fE// 64 `
zeroize-54ca2aa07f4f5310.zeroize.7a0bdf9a00c1501f-cgu.0.rcgu.o/
lib.rmeta/ 0 0 0 644 324368 `
ELF·ñ@@GNUÀrust
õî#rustc 1.96.0 (ac68faa20 2026-05-25)ÁíàÄTËŸ ÜJîÄ)'ß\¥!-3d1337db07d0b3aeÁ¤²XctÔ'ÐÓ©z¨ɽÓ-a4945860e1c53b00Á¤°ð ¾ä-±($²ï=©Ã-7e98a21bfd32b0edÁÀ­G»À|ŽGZeroizeÁ<ïG»zeroize_deriveÁÔ¹G
ZeroizeOnDropÁløG»Ü#%ôóHìôœÀHìõ´ÕHü¿H-CStringÁ<…M»À|åLí¤impl_zeroize_for_simd_registerÁbarrierÁ optimization_barrierÁ ¥stackÁ
zeroize_stackÁŸ  
  
É0zeroizeÁôDefaultIsZeroesÁ
TryZeroizeÁ4 try_zeroizeÁ6«6Œimpl_zeroize_with_defaultÁimpl_zeroize_for_non_zeroÁ=«=Œ@«@Ÿ@ @ŒE«EŸE I«IŒL«LŒO« Q«QŒ
T«TŒ W«WŒ ZŒ
\«\Œ_«impl_zeroize_tupleÁb«bŒe«g«gŒj«lŒnŒp«pæ s«sƒsw«w÷z«zåz´~«~¥«É¥«as_mutÁ«ŒŒ«Ž«Žãvolatile_writeÁ¥ volatile_setÁ¥zeroize_flat_typeÁ
__internalÁAssertZeroizeOnDropÁzeroize_or_on_dropÁ¥Ó 
AssertZeroizeÁžÓ  ¥ Ó £Œ¥Œ§Œ©Œ«Œ­Œ¯Œ±Œ !"#$%&'()*+,-./01ÅŒÆONEÁ2ÈŒÉè
3ËŒÌè
4ÎŒÏè
5ÑŒÒè
6ÔŒÕè
7׌Øè
8ÚŒÛè
9ÝŒÞè
:àŒáè
;ãŒäè
<æŒçè
=ééŒ>ì?îîîŒ@òòAõõõõŒBúúúCþþþþþŒDEŒFGŒHžžžžžžI¥¥¥¥¥¥¥˜¥ŒJ®®®®®®®˜K˜ŒLÀÀÀÀÀÀÀ˜ÀMÉÉÉÉÉÉɘÉɚɌNÔÔÔÔÔÔÔ˜ÔÔšOÞÞÞÞÞÞÞ˜ÞÞšÞÞŒPêêêêêêê˜êêšê ZeroizingÁõ
õ«õˆQù«ù×Rü«ü>Sÿ«ÿÖT«U«
1
5
8
?
D
I
K
N
S
V
Y
[
^
d
i
m
o
u
v
v
}


ˆ





Ÿ
¢
¤
¦
¨
ª
¬
®
°
²
Æ
É
Ì
Ï
Ò
Õ
Ø
Û
Þ
á
ä
ç
ë
ñ
ù
ƒ


­
¿
Ó
é
û
û
û



0234™ž0ç‘ç‘è‘ uint8x8_tÁ鑈 õݖ亭0Ó’Ó’Ô’
uint8x16_tÁÕ’ˆ ÛÓš€j0‚’‚’ƒ’
uint16x4_tÁ„’ˆ ÇZí|+P0î’î’ï’
uint16x8_tÁð’ˆ Ùš+ô=
'0ž’
uint32x2_tÁŸ’ˆ ‹ºê™0‰“‰“Š“
uint32x4_tÁ‹“ˆ R®èÕè¸ÈÈ0¸’¸’¹’
uint64x1_tÁº’ˆ +,›#‹ªÌ0¤“¤“¥“
uint64x2_tÁ¦“ˆ ¨žêágÊÆ0«3”í”í•í
PhantomPinnedÁ yaDŸd¤†ì333333333333333332× 2“!0ô ô õ ¨÷ ˆÐ  mjçítoé¾!0ô ô õ ¨÷ ˆÐ  mjçítoéÇ!0ô ô õ ¨÷ ˆÐ  mjçítoéÐ!0ô ô õ ¨÷ ˆÐ  mjçítoéÙ!0ô ô õ ¨÷ ˆÐ  mjçítoéâ!0ô ô õ ¨÷ ˆÐ  mjçítoéë!0ô ô õ ¨÷ ˆÐ  mjçítoéô!0ô ô õ ¨÷ ˆÐ  mjçítoéý!0ô ô õ ¨÷ ˆÐ  mjçítoé†"0ô ô õ ¨÷ ˆÐ  mjçítoé"0ô ô õ ¨÷ ˆÐ  mjçítoé˜"0ô ô õ ¨÷ ˆÐ  mjçítoé¡"0´­´­µ­WrappingÁ·­ˆ »-ˆ
óQ]Ë 0Ë Ÿ2Ä(0ÜlÜlIterMutÁßlµ ™làl
end_or_lenÁ™lál_markerÁ™lÚ½íDþïl%8«0Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙË 2Ë)0ÑÛÑÛ MaybeUninitÁÓÛuninitÁÝÔÛ»ÝÍõƒ«%9Ë 0
¢*0
Ë 00 PhantomDataÁFu\»ŸË 2+02Ù+0Û+2ð+0Û+ô+2‰,0Û+ô+,2¤,0Û+ô+,¬,2Á,0Û+ô+,¬,Ë,2à,0Û+ô+,¬,Ë,ì,˜2-0Û+ô+,¬,Ë,ì,-2¤-0 Û+ô+,¬,Ë,ì,-´-š2É-0
Û+ô+,¬,Ë,ì,-´-Û- 2ð-0ªBªBö­BbufÁ÷<®B÷<9)
-ÜnLË çEçEèEGlobalÁ ¿±‡§í#2™.0žBoxÁ¡ˆˆ¢ˆl }.xÏ„+Ù.2”/0ž¢.¡ˆˆ¢ˆl }.xÏÙ.0úHúHßûHÁ‘4Ý­f‰úM÷¿cõõöÞøˆ 7×µcw…ÇÖË ³è0è0Ðìè0µßè0è0Øè0éè0Ë é!è0ö!è0àõõöÞøˆ 7×µcw…ÇÖ¿)¥ãû1¯20è02è0Œ"è0 8 8¥ž¯2£ç‘¥Ó’§‚’©î’«­‰“¯¸’±¤“6Åô Èô Ëô Îô Ñô Ôô ×ô Úô Ýô àô ãô æô =´­@IÜlLÛ¼QÑÛT W Z\• é
î
õ
þ


¥

É
Þ
bªBglnúH‰õ³”í´
µ·¸¹º»¼½¾¿ÀÁÂÃÄ:”í;
EOÛ¼_• ì
ò
ú


ž
®
À
Ô
ê
eªBjŒõùõüõÿõõõsõwõzõ~õõõŽõ
 0-§32[¿c`³ÐìµßØéé!ö!àãŒ"žðó­ôËX
-—”?Õëƒ?ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9¤uŒ•?%–Ë?Å–Ë? ¤ýŸ™/N
ä¾™N˜ô!ÙN©¡"-È™NP
­•?
º•?
À•?ý‡ä#? ½‡ä?  
ÃÛÃÛ ManuallyDropÁÅÛ»¬µÜÀ,%*¤Z  ¤
©ä?  ýàÕ%N
°ä? 
–ÌXø·
 
ý­æ$N¸
ë¤
ÈæNÍæN 1 €¸
ü‹* ì‹
ϜN
Á 
“! ´
üѨ# Áò , ø Õ¤ø²£ý¸ÊçXÓ¤˜üýá“à?ó¤Ñý“”®?ý¹ƒR?ò¤ÕŸ”?ýúɺ?ö¤eŽ•?ýöÐæOú¤›•?ý·”ŸN¬¤í·ÒOý¬*ñFšî$FùѬÞ[ÿÝùÑ“á4ý»•MXʤ}î—NýÕàì?÷¤mŠÌXý˜@Z ÛÆ:¤]Ÿä? ýµ‚³Z ¤5«ä? ý¨ÃåN
ݤUփZ
ü·h¤øÞ4ý¾âœNç¤ìä·îšî$FéÿÝâÛʤ}ÏåNüƒ´  ¤Ð¨ýœCNÀ¤wèÛ¤“!d©“!Ç ¤H½¤Ü·8Û·8Ó“!ýŒ•"? 9Š ·8u–Ë?”;ò  Æ:ñ  9a“!RÒ<”;w¯M¡˜N¤ýå•!X¤¡"¤¡"
ɤýÆË$X
èÝéàˆ%F¶9 
Ǥýªâ#?
óÝéÔˆ%Fï;÷¤
ÙæNéçîåâßÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9èáÞÛ èØT
ÃèÕjô!Óy¡"ÑÏÌÉÙÆ   É ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*è´  è²  ¯« ¨¥
¬
¤X
ëè
  Ë
 

R 
Ò<
# ÁŒ ,Š ¦ƒÓè~|óèHwròènköèfcúè^[¬èVSšOKÿÝE?Êè;8÷è30 Û†Fè- * è% "
Ýè
èçèûšóÿÝíçÊè

 èÀèxéÛè“!“! èÿèÙ ˜DØ ˜DÐ “!ýøDƒ  ˜DùÆFè  †Fç øDW“!HÒ< ÆFm¦÷èôè¡"è¡"
Éèñ¢Cé‹Eð
ÇèåÆCÝGÐèÙ¿
½
Ä
»
¸
µ
ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9­·
´
±
 ­®
* 
í«
@ ô!©
O ¡"§
ô
¥
¢
Ÿ
¯ œ
˜
 Ÿ
ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*­Š
 ­ˆ
 

~
{



z
. 
ë­
v
s
¡
q

o
m
 k

j

(  
Ò<f

e
# Áb
 ,a
`
 _
¨]
Y
Ó­T
R
ó­
M
H
ò­D
A
ö­<
9
ú­4
1
¬­,
)
š%
!
ÿÝ

Ê­

÷­

 ÛÜO­
 
 ­û  ø 
Ý­ó 
ð ­í ê ç­å Ñ
šä É
ÿÝÃ
½
Ê­ã à  ­Ý Û À­N ¿
Û­“!Ø “!× ­Õ ­¯îM®îM¦“!Ó ÎNY îMÏ œP¾
 ÜO½
ÎN-
“!
Ò<ß œPÞ C
| Í ­Ê ­¡"Ú ­¡"
É­Ç ¢C¿ áNÆ
Ç­» ÆC³ åP¦
­¯ šŽÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9òŠ ò
Ãòô!%¡"}Ê{xur n  u ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*ò`  ò^  [W TQ
X
P
ëò
LI wG
EC A
@
þ 
Ò<<
;# Á8 ,76 5ª3/Óò*(óòô#òòöòúò
¬òÿšû÷ÿÝñëÊòçä÷òßÜ Û²YòÙ Ö òÑ Î
ÝòÉ
ÆòÃÀçò»§šºŸÿÝÊò¹ ò³±Àò$Ûò“!®“!­ ò«òÄWÄW|“!©¤X/ ÄW¥òY  ²Y ¤X“!ôÒ<µòY´R£ò ò¡"°ò¡"
Éò¢C·Xœ
ÇòÆC»Z|òkipgdaÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9·c`] ·ZÖ
÷Wìô!Uû¡"S QNK[H D  K ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*·6  ·4  1- *'
.
&Ú
ë·
" M
 

Ô 
Ò<
# Á ,
   ¬ Ó·þó·Êùôò·ðíö·èåú·àݬ·ØÕšÑÍÿÝÇÁÊ·½º÷·µ² Ûˆc·¯ ¬ ·§ ¤
Ý·Ÿ
œ·ç·}šuÿÝoiÊ·Œ ·À·úkÛ·“!“!ƒ ··[šaZšaR“!úa ša{Ècj  ˆci úaÙ“!ÊÒ<ÈcŠï(y·v·¡"·¡"
É·s¢Ckbr
Ç·gÆC_dR·[A?F=:7ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9ü963 ü0¬
Ãü-Âô!+Ñ¡")v'$!1   ! ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*ü   ü
   ý

ü°
ëü
øõ #ó
ñï í
ì
ª 
Ò<è
ç# Áä ,ãâ á®ßÛÓüÖÔóüÏÊòüÆÃöü¾»úü³¬ü®«š§£ÿÝÊü÷üˆ ÛÞlü  ü} z
Ýüu
rüolçügSšfKÿÝE?Êüeb ü_]ÀüÐAÛü“!Z“!Y üWüðjðj“!UÐkø ðjQžm@  Þl? Ðk¯“! Ò<ažm`ÅþOüLü¡"\ü¡"
ÉüI¢CAãk'
Çü=ÆC5çm(ü1¥±ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9Áø Á'±
ÃÁB±ô!S±¡"k'{¥ °  ° ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*Á  Á  #4 >H
H
_±
ëÁ
{ _
¦ ¯
·
 
Ò<¾
½# Áº ,¹¸ ·°µ±ÓÁ¬ªóÁ¥ òÁœöÁúÁŒ¬Áš}yÿÝsmÊÁif÷Áa^ Û´vÁ[ X ÁS P
ÝÁK
HÁEBçÁ=)š<!ÿÝÊÁ;8 Á53ÀÁ¯ÛÁ“!0“!/ Á-ÁÆtÆt“!+¦uø Æt'ôv¥  ´v° ¦uH“!_Ò<¦ôv¯&%Á"Á¡"2Á¡"
ÉÁ¢C¹u'
ÇÁÆC ½w_Á¥±ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9ø '±
ÃB±ô!S±¡"k'{¥ °  ° ÃÛÃÛÒ9ÅÛ»¬µÜÀ,%*    #4 >H
H
_±
ë
{ _
¦ ¯
·
 
Ò<×
á# Áó ,  ²&0ÓCIóanòˆö£ú¾¬ÑÙšèñÿÝÊ (÷;C ÛŠ€W _ r z
Ý
¦­çÀÙšÑñÿÝÊöþ   À¯CÛ“!; “!G T œ~œ~“!v ü~ø œ~Œ Ê€¥  Š€° ü~H“!_Ò<¦Ê€¯T &Ú ì ¡"ì ¡"
É!¢C(!'
Ç>!ÆCL!_\!¦¯·Ò<×á# Áó, · þ À¯2¯CÛ¯2“!; “!² ¯2ªÒ<¦ ¯2¯¹þıô!Ÿ¦¯·Ò<×á# Áó,  ûüü“iüÀ<þ ô!ŸüØ! À犯CÛ犓!; “!¹çŠÿÒ<¦ 犯¬-dÞU
±
´Ë $HH_±
ëË {_ êU¦¯·Ò<×á# Áó, V8 ü©UmË üÉU"­çË ÀÙšÑñÿÝÊË öþ Ë ÔõU ÀË ¯CÛË “!; “!¾U Ë L´UË ¢ Ë H“!_Ò<¦ Ë ¯7ñì Ë ¡"ú‹ôÆCL!¯Œ_Ë \!HH_±
ë¼"{±¼"_¦¯·Ò<×á# Áó, Ñ]Æ ø™[¸¼"Èõ\­ç¼"ÀÙšÑñÿÝʼ"öþ ¼"Ф] À¼"¯CÛ¼"“!; “!®[ ¼"H¤[ ¼"H“!_Ò<¦ ¼"¯0îŠ]Ǽ"ì ¼"¡"ÆCL!š_¼"\!xÞ[
`Þ[
³
¾!ë[¾!
=A¨Ø[bù
½D#
Á
½#
àWù
Ö*#( >\ Û¼"•\—\Þ\øÅ[›Çˆ\¼"L•^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¼"_ë!Hˆ\¼"ÇoneÁÛ£HH_±
ë÷"{±÷"_¦¯·Ò<×á# Áó, É ÷"Ž­ç÷"ÀÙšÑñÿÝÊ÷"öþ ÷"Œ À÷"¯CÛ÷"“!; “!Š ÷"ˆ ÷"H“!_Ò<¦ ÷"¯uˆÊ÷"ì ÷"¡"ÆCL!­—_÷"\!

³
Ç!Ç!ÁÆæù
½D#
Á
½#ò”ù
Ö*#(…•;Û÷"}{ÊŠx÷"T¤^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ÷"Õë!v÷";ÿê•MHH_±
ë²#{±²#_¦¯·Ò<×á# Áó, 
Ì ²#­ç²#ÀÙšÑñÿÝʲ#öþ ²# À²#¯CÛ²#“!; “! ²#þ ²#H“!_Ò<¦ ²#¯,ëþͲ#ì ²#¡"ÆCL!¡ž_²#\!ü
 ü
³
Ð!úÐ!9>þ^ù½D#
Á½#ò”ùÖ*#(…•;úÛ²#ù÷õóÍð²#T´^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ²#Më!î²#³ÿê•ÅŽHH_±
ëí#{±í#_¦¯·Ò<×á# Áó, 
Ï 
í#
­çí#ÀÙšÑñÿÝÊí#öþ í#~
 Àí#¯CÛí#“!; “!|
í#z
 í#H“!_Ò<¦ í#¯¨
g z
Ðí#ì í#¡"ÆCL!™¥_í#\!x


x

³
Ù!v
Ù!ˆ
¹
¾
~
Þ
ù½D#
Á½#ò”ùÖ*#(…•;z

Ûí#y
w
u
s
Ð
p
í#TÄ^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙí#Í ë!n
í#3 ÿê•E  HH_±
ë¨${±¨$_¦¯·Ò<×á# Áó, Ò  ¨$­ç¨$ÀÙšÑñÿÝʨ$öþ ¨$ À¨$¯CÛ¨$“!; “! ¨$ ¨$H“!_Ò<¦ ¨$¯0ïÓ¨$ì ¨$¡"ÆCL!™¬_¨$\!

³
â!þ
â!INnù½D#
Á½#ò”ùÖ*#(…•;
Û¨$ Ó¨$\Ô^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¨$]ë!þ
¨$Ãÿê•ÕžHH_±
ëã${±ã$_¦¯·Ò<×á# Áó, Õ ã$­çã$ÀÙšÑñÿÝÊã$öþ ã$Ž Àã$¯CÛã$“!; “!Œ ã$Š ã$H“!_Ò<¦ ã$¯¸wŠÖã$ì ã$¡"ÆCL!©³_ã$\!ˆ
ˆ
³
ë!ë!˜ÉÎŽîù½D#
Á½#ò”ùÖ*#(…•;ŠÛã$ƒÖã$då^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙã$Ýë!~ã$Cÿê•UHH_±
ëž%{±ž%_¦¯·Ò<×á# Áó, Ø 
ž% ­çž%ÀÙšÑñÿÝÊž%öþ ž% Àž%¯CÛž%“!; “! ž% ž%H“!_Ò<¦ ž%¯1ðÙž%ì ž%¡"ÆCL!©º_ž%\!

³
ô!ÿô!
;@`ù½D#
Á½#ò”ùÖ*#(…•;üÛž%ûù÷õÙòž%L÷^Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙž%Oë!ðž%µÿê•ÇHH_±
ëÙ%{±Ù%_¦¯·Ò<×á# Áó, Û Ù%|­çÙ%ÀÙšÑñÿÝÊÙ%öþ Ù%z ÀÙ%¯CÛÙ%“!; “!x Ù%v Ù%H“!_Ò<¦ Ù%¯¤cvÜÙ%ì Ù%¡"ÆCL!›Á_Ù%\!t{
ƒt
³
ý!rý!~¯´tÔù½D#
Á½#ò”ùÖ*#(…•;pwÛÙ%omkiÜxfÙ%T†_Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÙ%Ãë!dÙ%)ÿê•;HH_±
ë”&{±”&_¦¯·Ò<×á# Áó, øÞ ö”&ò­ç”&ÀÙšÑñÿÝÊ”&öþ ”&ð À”&¯CÛ”&“!; “!î ”&ì ”&H“!_Ò<¦ ”&¯Ùìß”&ì ”&¡"ÆCL!È_”&\!êñ
ùê
³
†"è†"ö',ìLù"½D#
Á"½#ò”ù"Ö*#(…•;èïÛ”&çåãáßðÞ”&T–_Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ”&;ë!Ü”&¡ÿꕳ|HH_±
ëÏ&{±Ï&_¦¯·Ò<×á# Áó, tá rÏ&n­çÏ&ÀÙšÑñÿÝÊÏ&öþ Ï&l ÀÏ&¯CÛÏ&“!; “!j Ï&h Ï&H“!_Ò<¦ Ï&¯U hâÏ&ì Ï&¡"ÆCL!‡Ï_Ï&\!fm
uf
³
"d"v§¬lÌù%½D#
Á%½#ò”ù%Ö*#(…•;hoÛÏ&gecaâp^Ï&T¦_Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÏ&» ë!\Ï&! ÿê•3 üHH_±
ëŠ'{±Š'_¦¯·Ò<×á# Áó, ü"ä ú"Š'ö"­çŠ'ÀÙšÑñÿÝÊŠ'öþ Š'ô" ÀŠ'¯CÛŠ'“!; “!ò" Š'ð" Š'H“!_Ò<¦ Š'¯#Ý#ð"åŠ'ì Š'¡"ÆCL!‡Ö_Š'\!î"õ"
ý"î"
³
˜"ì"˜"#7#<#ü"\#ù(½D#
Á(½#ò”ù(Ö*#(…•;ø"ÿ"ÛŠ'÷"õ"ó"ñ"å#î"Š'\¶_Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙŠ'K$ë!ì"Š'±#ÿê•Ã#Œ#HH_±
ëÅ'{±Å'_¦¯·Ò<×á# Áó, „&ç &Å'~&­çÅ'ÀÙšÑñÿÝÊÅ'öþ Å'|& ÀÅ'¯CÛÅ'“!; “!z& Å'x& Å'H“!_Ò<¦ Å'¯¦&e'x&èÅ'ì Å'¡"ÆCL!—Ý_Å'\!v&}&
…&v&
³
¡"t&¡"†&·&¼&|&Ü&ù+½D#
Á+½#ò”ù+Ö*#(…•;x&&ÛÅ'w&u&s&q&è€&n&Å'dÇ_Û¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÅ'Ë'ë!l&Å'1'ÿê•C' '4¹`Ë „¹`±
1Ë 4LÀ` È`Ð`?ü™`7“!®` €(L¤`“!bøŽ>žä|úa$úa „+•ï¡,
ÅÛ4e 
[%
µƒ[%
§ ïíe¼îËè¿*„+]
5ô4e mÇš% ýÕ€$%   „+½Çš%  Œ
Ýš% ý½š"% § ïíe¼îËè¿*Ë 
ù4eMñ;e±Ë  ’b “bšb¥ÑÝN  ±¡"ŸŒýî;Kee¢<e î
 Œý¾ºO  ±¡"Ÿ
¶<e LýÈ<.e ÜlË ±¤*Fu\»ŸøŽ ; ˆbÌúa±
1ÜlÜlæ'ßlµ ™làl‚(™lál˜(™lÚ½íDþïl%Ë ³LŠbD üÚa@ý²¡U,”tË Tÿaýè3ž eìlË Óý¦4àeýÅ4ÁeýÍ;³eýZ‘%¡„+þý²™µ%¯„+Ë ý†~û%ª„+EÌš%ýÚÙN¸Ë Ýý;e4ªË E¦<eýí¯ø
OéË E¯<e
“!ïa Ä(Låa“! ˆêàˆêéÆåä”çÉ4eˆæÍŒUÑ;eŒâæ][%ŒjâævË ƒê
ÚsË ]°4e øK”d8 K d5ëÙg
 
"¼2i§ ïíe¼îËè¿*¿)ç2i ¿)É4i±¿)KËdÂý‰-!O  ¡"¥5i±
ùÄß8,i¡Äö8i ùºÞ$! ±¡"N µï ÄŠ9i ùÄÍ8>iµï"ùÄÆ4ò i ùÄÁ;Ci
ùÄÈ;<i  òîr µïu¿¤%Œ µïý®¤%

̤%k
 ÄÈ<i
±

—>i ý¯Î(% ±¡"ý¥Î3%  òî
×Î%©ÄŒ>iòî Ä >i  mº”%m µï´”%

Æ”%¹Ä±@i Û¼ ¿)
ÓÚ
á èïö$˜dÛÿót³d±
1¿)$³dL¸d?F
M T[bÆÒdKüôc^¤ý’O,dÏL ÜlÜlæ'ßlµ ™làl‚(™lál˜(™lÚ½íDþïl%¿)üý²ÙEgÌPàõùÄó0õiÈÍ¿)'ùIJ2¶iùÄÖ2’iùÄí4µiýË)çOÉ¿)1Ä5iýØ>O ¿)“!e-O ùº¨Ú¡!»ÕÄú8iÙ šî$F ñ ÿÝ ñ¸¿)õý¤R%û¿)5ª¿)E³¤%Kª¿)EŤ%ý—ËÉ%µ¿)1Ä>i}ª¿)EÇÎ%ýò’Ý%­¿)¼@i±ª¿)E¿”%“!‰dÞõLÿcÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙÿóñÿóô“!âòîĶ2iµïÚ2i¡"Äñ4iµïB¡">ÌòîÉòîJÿó‰Ä¶@iµïm®¤%µïϵïjµïîùelemÁ§,.¿)Üô°
³ÖéЈ%F $Åe\·e
,¼eÛË |Øe±žä,ØeLÞe\äh%÷‘1


Û¼Ë ý&Xç†X
û‘1
 ïhü°eÊü¡l(Ü¡l
Ì«NM‡O ô! Èlüƒl‹ 
@OǼ±¡"øO¾¼Ü ­¼“c ¡ç" ¡ç" ±Ë)¡" ã¯ç"Q Uê“c
ùº…¤$!
±¡"
¬•c ¹  
_±
ëô! {±ô!_Q )0 m$Äp$Êp  Û¼Ë _±
ëË){ _ Îp ¦¯· Ò<×á# Áó,  üpü N!üÊe°ýδ1äTË 4éhýîÿXÛË)Åä‘1ý‚†XýŠ«ENÂË)»ÂË)ô!d½lýÞjKXÀË)Œîlü¬»ðô!Ê¥ üᆱ
GÏL££¹ƒ£¹„£þ-'ºˆÉ¬g¡" ý«¨@c ¯I¡"7ýŠ“©c
¦I¡"]Ú¨c
ýà“«cùãüæ6"ºáHùæãHÒcϰýÉ”cùº  ¡!¶ÕÁæ‘JcÙšî$FñÿÝÑ 
éô!4†¿­ çô!ìôÀÙšÑñÿÝÊô!ö­çË)ü°pÙšÑñÿÝÊË)öþ Ë)ÔÛp ÀË)¯CÛË)“!; “!¥e Ë)L›eë!çøŽÞ“!ÊË)®ŸþA Ë)B¶ˆÙË)ÍË)ÒŸþó¾
ü¡"ä“c¡"ýÀ”*c¡"“!_“!_Ò<¦ Ë)¯«»ý‡k XË)¡"ì ô!¡"ì Ë)¡" žä¯Ë)=
²Öéçˆ%FÆCL!¦€_ô!\!ÆCL!ª_Ë)\! $Ét¬Ït¥ ÑÛË ±“!øŒ'±
ÃË B±ô!S±¡"k'{¿_
±
ë¢*{_ ät¦ ¯
·
 
Ò<×
á# Áó ,  ‘uSü°sáIóË ˆanòË ˆöË £úË ¾¬Ë ÑÙšèñÿÝÊË  ­ç¢*üµt0Ù
šÑ
ñ ÿÝ 
Ê¢*ö
þ ¢*Ôðt À¢*¯CÛ¢*“!;  “!Ås ¢*L»s ¢*È¢*¼¢*“!v ŒøŽŒ “!_
Ò<¦ ¢*¯YÚ Ë ì Ë ¡"ì ¢*¡"¢C(!Å‹'ÆCL!²Œ_¢*\! %ôÈ,É  ÑÛÑÛ®)ÓÛÃ)ÝÔÛ»ÝÍõƒ«%9ô!üÿx&TÿxÜŠy
¡ºí†! ùº³“@! ºÑ“!   "ã“!
 
±Ë ¡""N  
ºò“!
  º«“! " º®“!
 ºó“! ‚”!  ¡"Ä 
„’

]
±
ÌÙ
¤y•Ѝ1 ±
‡U± …•˜¨1,º‡! Û¼¡"t{
fé§1 Û¡" ·yÑËk

±ÿÿÿÿÿÿÿ¡",
 Ël
ø,Ây&±ò”±
/…•±'8
¬ç|¥± ç‘øŸþ'±
Ãô!B±ô!S±¡"k'{´üÕ|. ô ±¡"ñ ì é !ð !å !Ó !
 Ï Ì #±¡"Æ |&_'±
ëç‘{_ 
ðö ‚}¦+¯+·,-Ò<×+á+# Áó,
 +¯}V.ü•xšüµxúüôx»ý½ÈW,…t¢*dÄx ¢*ç‘ÌÑx ÀË t–yùº“†º!¿ÕÀùºÛ†r!ùºÚ’¿!ÿÕ×ùº¦“s!ýÔ‘xƹº’‡!ý—§1°T¡"”¦y…ä§1  ùË·jîŽæ¬Êyýç¯HÐ[ë!€“€“TryFromIntErrorÁ‚“ˆ Z} Ràvq<àyùß¾|` Ióô! anòô!ˆöô!£úô!¾¬ô!ÑÙšèñÿÝÊô! ¯
ç‘IQ¬
ïÏL¢„q
¯I¡"¤m
¦I¡"h
e
`
ºá¢Z
 ϰT
P
"¶ÕI
"Ù#šE
#ñ$ÿÝ$éç‘B
­çç‘A
Ù'šÑ'ñ(ÿÝ('Êç‘ö'þ ú*ÔŽ} +Àú*¯+C+Ûú*“!; +“!ªx ú*L x摹x¡"$øxÛ¼ݼÞ¼©ß¼à¼ÛἈcSñŸ«‡zÙ¡"6¡"58ç‘ ú*…ôÈ,"½¯">"9"'¡"²“!Š
Y Ý
ç‘“!v Ÿþøæ‘Œ æ‘
¡"
¡"
¡"£!“!_'Ò<¦+ ú*¯+=µ ADÉ
Ë ¡"Iˆk­Íë!Ú ô!ì ô!¡"ì ç‘¡"
Ús¢* ò”Ôû”h¢C(!—'ŠÓ
ÆCL!é™_ç‘\!(/±ÿÿÿÿÿÿÿ¡"QüÑ„9
 # ±¡" \ø.©,±ò”± 5…•±(ŒÞ„dã„ ÕôÈ,Œ)dñ„ ±ú‹ ³  °
 ·
¬
 š
 æ  
 
±¡"  C 
_±¯Œ{
_
Í  ƒ Š ‰… ¦¯·Ò<×á# Áó, ·…Yü‰®ðŽæܱëÐ[ë!¤¨ê…tË àÊË mckÆ ÏL¢„«¯I¡"¾
¦I¡"
  z ºá¼ t ϰn j¶ÕcÙš_ñÿÝ, éË [­çË YÙšÑñÿÝÊË öþ „+Ô–… À„+¯CÛ„+“!; “!žÆåL”¡"˜ŒnË >O âæÆŒóí ¡"ñ ¡"î ¡"û
“!_Ò<¦ „+¯~=/­Íë!ì Ë ¡"Œî½ò”>ú‹ÚŒîTÿ„ŠÎÆCL!¯Œ_Ë \!ˆˆ^Äð‡“!…ˆ –+Lû‡ 1P0€‹Û+ 0©‹±
1Û+P0©‹H0´‹0΋ëø0¨Š¦ø0ùŠUø0¾Š“!0½Š Ù+H0³Š Û+ž´bû°®P1€‹Û+ô+ 1©‹±û°P1©‹H1´‹,±
1ô+,(1΋ñø1¨Š¦ø1ùŠUø1¾Š“!1½Š ð+H1³Šì±Î ô+Ø“!µ&õ}û°醳ïP2€‹Û+ô+(, 2©‹±û°P2©‹H2´‹,±†³($L±
1,LH2΋ùø2¨Š¦ø2ùŠUø2¾Š“!2½Š ‰,H2³Šì±÷³  ,“!à“!ç89EQœû°(†³/ܵ6P3€‹Û+ô+(,:¬, 3©‹±û°P3©‹H3´‹,±†³($L±ܵHDl±
1¬,lh3΋ƒø3¨Š¦ø3ùŠUø3¾Š “!3½Š ¤,H3³Šì±2÷³;×¶D ¬,O“! “!“!K~Š¢»û°g†³nܵuŒ¹|P4€‹Û+ô+(,:¬,LË, 4©‹±û°P4©‹H4´‹,±†³($L±ܵH Dl±Œ¹h
dα
1Ë,Œˆ4΋ø4¨Š¦ø4ùŠUø4¾Š “!4½Š Á,H4³Šì±d÷³m×¶vº Ë,Š“!2“!:“!B“!J\ÁÍÙåñØû°¤†³«ܵ²Œ¹¹”½ÀP5€‹Û+ô+(,:¬,LË,^ì, 5©‹±û°P5©‹H5´‹,±†³( $L±ܵH
Dl±Œ¹h dŒ±”½ˆ ¬±
1ì,¬¨5΋ø5¨Š¦ø5ùŠUø5¾Š
“!5½Š à,H5³Šì±÷³Ÿ×¶¨º±¡¾º ì,Å“![“!c“!k“!s“!{m(4@õû°á†³èܵö”½ýòÁP6€‹Û+ô+(,:¬,LË,^ì,p- 6©‹±û°P6©‹ H6´‹,±†³(
$L±ܵH Dl±Œ¹h dŒ±”½ˆ
¬±òÁ¨¤Ì±
1-ÌÈ6΋­ø6¨Š¦ø6ùŠUø6¾Š“!6½Š -H6³Šì±È÷³Ñ׶ں㡾ìˆÃõ -“!“!Œ“!“!œ“!¤“!¬~GS_kwƒ˜û°†³&ܵ-Œ¹4”½;òÁB¦ÇI P7€‹Û+ô+(,:¬,LË,^ì,p- ´- 7©‹±û°P7©‹
H7´‹,±†³( $L±ܵH Dl±Œ¹h
dŒ±”½ˆ¬±òÁ¨¤Ì±¦ÇÈÄì±
1´- ìè7΋¿ø7¨Š¦ø7ùŠUø7¾Š“!7½Š ¤-H7³Šì±ú÷³×¶ º¡¾ˆÃ'ÅÈ0 ´-;“!­“!µ“!½“!Å“!Í“!Õ“!Ý Š¢®ºÆ˜ÒÞ /û°\†³cܵjŒ¹q”½xòÁ¦Ç±Í
P8€‹Û+ô+(,:¬,LË,^ì,p- ´-
Û- 8©‹±û°P8©‹ H8´‹,±†³( $L±ܵH
Dl±Œ¹hdŒ±”½ˆ¬±òÁ¨¤Ì±¦ÇÈÄì±±Í èä ±
1Û-

 
8΋Óø8¨Š¦ø8ùŠUø8¾Š“!8½Š É-H8³Šì±/÷³8×¶AºJ¡¾SˆÃ\ÅÈeÙÎn Û-y“!Ù“!á“!é“!ñ“!ù“!“! “!
 ÐÜèô ˜$ š0
L û°œ†³£ܵªŒ¹±”½¸òÁ¿¦ÇƱÍÍ“ÔÔ
P9€‹Û+ô+(,:¬,LË,^ì,p- ´-
Û-¦  „. 9©‹±û°P9©‹ H9´‹,±†³(
$L±ܵHDl±Œ¹hdŒ±”½ˆ¬±òÁ¨¤Ì±¦ÇÈÄì±±Í èä ±“Ô
  /±
1„. 0
-9΋éø9¨Š¦ø9ùŠUø9¾Š“!9½Š ð-H9³Šì±d÷³m×¶vº¡¾ˆˆÃÅÈšÙΣÆÕ¬ „.·“!“!
“!“!“!%“!-“!5“!=“!E ±".:FR˜^j šv
 i
û°Ü†³ãܵꌹñ”½øòÁÿ¦Ç±Í
“ÔÐÛ
|Ò’ ú³ -ÍZ E€¸ ((RawVecÁ+innerÁ,˜(µ!iÇ÷åÖ_Ë Ù.-- RawVecInnerÁ/µ 0capÁ1¤/‰6< ”IÙ.UniqueÁ ž˜(8Åá™-Ýñô!§ ïíe¼îËè¿*ô!¨=  Œ5 E´
¡"ýijR „+
•´ ý¾³XŽ>  •> Œ>
“>>‰>
 ˆæ·>[>Y>V>
âæQ>ŒN>K>  ”ç >>
>±Ë 
ê’ ë’QNLïßµà…áÉáù>" ŒQX¡"U „+QXeÃö¡"±¡"ÍÝö±
®„+-ðö'£”ë>
ŒÞ>Û>Ç? ŒÚ>
Ì>?Ë> ÜlË  ±¦é¦@ ­@  ÄÌÒ’±ƒêéLâ’
¤þ“®±#ó%ñ'ïßµà…áÉáž@, Œ+%Eı#
#¡"Ò?-
̱#
#õö±#ö±#uü¸0±Ë ¡" EŒ²#
#¡"O#
“²#
#ýÿ=(b2 ýÃ')^8 ú*ýù=.b2 
¦>b2
¢²#@üù“#±
1ú*Ìù“L“”U¹0±ÿÿÿÿÿÿÿÿ¡"ýù¸=0E¡¹0
0ïßµàÆÆ‘ÆUsizeNoHighBitÁ’ƈ¢  ÞÌ3ëì8eÙ€ V1 ¡"
³¹00d¢ýùÊGÕCË Ù.LýݪÉ ÐBË Ù.u¬ËýÖâÚÒBË Ù.eÿ³ýZIEË Ù.-¥äýê¶NZÙ.Ë ¢ýÌ·[\Ù.Ë }š·ýº-Ço¯ô!Ë 5‰¸Ö@¯ô!Ë 5Ý.oÓ@ªô!Ï@ýò#Mo¬Ë ¸ÿ@ªË Eª·›A”tË T×’˜A ìlË gD ”A

A
ŒA
ˆA¡„+D
„A¯„+Ë 5D
Aª„+{AxA¸Ë sA
¥AªË rA
pAéË kA
ýóòŠCË Ù.<»“ý•óòâÐBË Ù.u°óÝÒBË Ù.ØÕEË Ù.ÒÏZÙ.Ë mË\Ù.Ë Çįô!Ë À“B¯ô!Ë ½ŽBªô!ŠB»¬Ë ¸´BªË µý‹¯¨“CË Ù."±#ÒBË Ù.e³±#¬$EË Ù.©$¦%ZÙ.Ë D %¢&\Ù.Ë ž&'¯ô!Ë 'jC(¯ô!Ë (eC)ªô!aC)'¬Ë 'C&ªË Œ&VC#éË mÀ±#ýË\`#GË Ù.Uÿ±#û7.ÀË u].ý»¸.^Ù.Å].ù€Æ V0§ÄUª¹0ýí7Âb#îr¢*ýƒ± #Ù2šî$F2ñ3ÿÝ3†82À¢*uè;b22Ê¢*}—<b2ýïÁtN2Æ¢*á2ýµ&¹^7ºú*¢*íÄÂN7!“!–’ ™.LŒ’“!?üì ˆê% Æå. “!ôø¡ãâæß ŒB ¡"
Éá@ ”ç‰DˆæTH
Œ‡DŒ G
âæ…DŒíGâæH“!£âæI
Œ¬ ¡"n
É᪠Œý®±#Œà#¡"Ÿ#¡"m#¡"k#¡"H#Éáé 'øêy0ü¢*2HË 67Ë ¡"è—Õ¡"S7¢*¡"ì ¢*¡"ƒêµêNŒî?EÑå˜
ŽÏéÛˆ%F|ê– $ê– à ž˜(8Åá™-Ýñ„+ˆæY „¯h-J4J;J
úE?J FJ >J <J  ˆæjJ J
 J J âæJ
ŒJþI
ӍSJ
ÎI ÌI±Ë  ‚— ƒ—Š—ÍI
 ŒÀI½I ©J
 Œ¼I
 ®I øI­I ÜlË 
±¦éˆK
K–Kõ ø–Ìê–±ƒê#Lú–i üÊ–@CI”tË Tï–@IìlË L<I8I4I0I¡„+*L,I¯„+Ë ÝK'Iª„+#I I¸Ë IMIªË IIéË I“!ß– ”/LÕ–“!üìˆê(Æå"„¯.¡"ª4e”ç"IˆæíLŒ IŒ¤KâæIŒ†Lâæ®LˆæˆdALË ƒêªŒîI:Ƥ
Ë !- ¿c(:磱
‡d±
…•(v5:ë£
:ì£û]Ö¿Ù¿Ú¿«Û¿ˆÜ¿Ý¿Þ¿ˆ‚†f|Â
“!ŸÈŸÈ ÈErrorÁ O˜éBLä è0î  c cˆ¢cµ
 `£c¬- `àB¤GS
1ù€ƒ  Ë Ƀš[±itǃù€Ë;Ƥ ±ú‹!8;î£ õË ;ô£;õ£þ9è0DË pRú‹<ù£<÷£ “!ð‚&0=Ƥ
Ë !Ë 4±
·ßË Ë OT\`f=„¤H=û£ð‚ð‚Ƀ¦Ƀ®7¹
DN»†Ø\¦¦ õË ·¦rüÿ¥8è0$—¦Ë ,Ц»
0t®§4®§ Ë %±
ÙË 3<µ§ »§¤©§ õË  ¼§çuü‡§<è0$š§ð‚,§Ë ®Ƀ­?ûˆÓ4‘¨ Ë „‘¨±žä2L˜¨  ¨4«¨ Ë L½¨Ë 䫨±
ÚË K5¬²¨ ƨΨvüß§o“!†¨ è0Lí§ð‚4ø§“!ØøŽý“!øŽÂɃ¯=sourceÁEvžä'²‹Ð„Ñ© õË ç©yü¥©Bè0dº©Ë ,­©»
0<€«Ë «}üàª-Ƀóªð‚,éª 1\Ÿ¬Ë °¬üó«=øŽ4ެƒŒL€¬ 14Ï­ ¿)|Ï­±
â¿)¯29DÖ­ Ý­ä­ü®­6óˆ­ û1,¸­ ¿)Ž=â4‹¯ ¿)|‹¯±
å¿)¯2:D’¯ ™¯ ¯ˆüâ®> ¯24ú® û1Lì®ÿó=™‘4а Ë „а±žä2L‘° ™°¡°üê¯7“!ÿ¯ƒŒLõ¯“!døŽ?žä4ʱ Ë „ʱ±žä2Lѱ Ù±á±ü­±4“!¿±ƒŒLµ±“!døŽ?žäHH_±
ë¯2{_…¸­ç¯2ÀÙšÑñÿÝʯ2ö“!Ô·ß‘À·¯2Í· ¯2H“!_dstÁ,srcÁ2ì ¯2¡"ÆCL!©•_¯2\!}L ±¡"zL£L|LyL
€L
uL
cL
¯L_L \L
±¡"Mø”c Û¼¡"rL ¼Û¡"@X
_±©•{ _ÊLO™ÁœÁMK¥M¬MKHRÏL¢„êMÉJ¯I¡"üMÄJ¦I¡"¿J¼J·JºáùM±Jϰ«J§J ¶Õ J Ù
šœJ
ñ ÿÝ iWé¯2˜J­ç¯2•JÙšÑñÿÝʯ2ö “!ö»Ñ–Ô»¯2ỡ",é»—¢÷N¡"ÄÑ–çIáN¡"åI¡"âI¡"ïN“!_ç•c÷•güjùcO¢„¡" ùwO¢„¡"´Pµ vJøLì ¯2¡"ŠâIÆCL!©•_¯2\!ŒÃÑ$ÃÑ "PŸþ ÓÑü¶Ñ(
 P±¡"PP
P P P ±¡"P [P
 P
P±¡"P
¸[_±¦€{±ô! _ KP
  ÝѦ
¯ · 
 Ò<× á# Áó
, 
ˆÒü’ÏöüÐϸOÀ³ŸtÛÏYU³Ÿô!dÈÑ6Oô!ÜÏQ×Q2OuVÏL¢„R÷N¯I¡"*RóN ¦I¡"îN ëN

æN
ºá(R
àN ϰÚN
ÖN
¶ÕÏN
ÙšËNñÿݘ[éô!ÇN­çô!ÅNÙšÑñÿÝÊô!öþ  ³ŸÜêÑ À¿¤¯CÛ¿¤“!;  “!ÉÏ¿¤$¼ÏŸþ{¿¤{ŸþFN@S
¡"DN
¡"AN
¡"NS “!_Ò<¦ ¿¤¯dataÁf$Ôϱ³Ÿ¡":KN³Ÿ¡"ì ô!¡"Š)NÆCL!¦€_ô!\!øÔôÚÔ“!õÔ  ï2$ðÔ 4töÖ±
1¯2$öÖLûÖ×¢üÇÖH“!çÖß‘LÝÖ“!b7çüœ¤) õË ö*è05Ë <C    0234‘õöí¤,GÀ¤—I òlÈI ¤*\ñI¤*èlþI”íè•í®)\˜JÑÛš<¥J ÀnumÁ$ÂJí NonZeroI8ÁLÈJè–
NonZeroI16ÁTÓJš—
NonZeroI32ÁTßJÌ—
NonZeroI64ÁTëJþ— NonZeroI128Á\÷J°˜! NonZeroIsizeÁd„Kâ˜" NonZeroU8ÁLK¤”#
NonZeroU16ÁT¥KÚ”$
NonZeroU32ÁT±K%
NonZeroU64ÁT½KÆ•& NonZeroU128Á\ÉKü•' NonZeroUsizeÁdÖK²–(­
ïKÂ )µ ôK*æ'<„LÜl+¢.¾L-ß4ËLúH.öØLªB—×øžü2&ž# [RustCrypto]: zeroize
[![Crate][crate-image]][crate-link]
[![Docs][docs-image]][docs-link]
[![Build Status][build-image]][build-link]
![Apache 2.0/MIT Licensed][license-image]
![MSRV][rustc-image]
[![Project Chat][chat-image]][chat-link]
Securely zero memory (a.k.a. [zeroize]) while avoiding compiler optimizations.
This crate implements a portable approach to securely zeroing memory using
techniques which guarantee they won't be "optimized away" by the compiler.
The [`Zeroize` trait] is the crate's primary API.
[Documentation]
## About
[Zeroing memory securely is hard] - compilers optimize for performance, and
in doing so they love to "optimize away" unnecessary zeroing calls. There are
many documented "tricks" to attempt to avoid these optimizations and ensure
that a zeroing routine is performed reliably.
This crate isn't about tricks: it uses [core::ptr::write_volatile]
and [core::sync::atomic] memory fences to provide easy-to-use, portable
zeroing behavior which works on all of Rust's core number types and slices
thereof, implemented in pure Rust with no usage of FFI or assembly.
- No insecure fallbacks!
- No dependencies!
- No FFI or inline assembly! **WASM friendly** (and tested)!
- `#![no_std]` i.e. **embedded-friendly**!
- No functionality besides securely zeroing memory!
- (Optional) Custom derive support for zeroing complex structures
## Minimum Supported Rust Version
Requires Rust **1.85** or newer.
In the future, we reserve the right to change MSRV (i.e. MSRV is out-of-scope for this crate's
semantic versioning guarantees).
## Example
```
use zeroize::Zeroize;
// Protip: don't embed secrets in your source code.
// This is just an example.
let mut secret = b"Air shield password: 1,2,3,4,5".to_vec();
// [ ... ] open the air shield here
// Now that we're done using the secret, zero it out.
secret.zeroize();
```
## License
Licensed under either of:
* [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)
* [MIT license](http://opensource.org/licenses/MIT)
at your option.
### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in the work by you, as defined in the Apache-2.0 license, shall be
dual licensed as above, without any additional terms or conditions.
[//]: # (badges)
[crate-image]: https://img.shields.io/crates/v/zeroize.svg
[crate-link]: https://crates.io/crates/zeroize
[build-image]: https://github.com/RustCrypto/utils/actions/workflows/zeroize.yml/badge.svg?branch=master
[build-link]: https://github.com/RustCrypto/utils/actions/workflows/zeroize.yml?query=branch:master
[docs-image]: https://docs.rs/zeroize/badge.svg
[docs-link]: https://docs.rs/zeroize/
[license-image]: https://img.shields.io/badge/license-Apache2.0/MIT-blue.svg
[rustc-image]: https://img.shields.io/badge/rustc-1.85+-blue.svg
[chat-image]: https://img.shields.io/badge/zulip-join_chat-blue.svg
[chat-link]: https://rustcrypto.zulipchat.com/#narrow/stream/260052-utils
[//]: # (general links)
[RustCrypto]: https://github.com/RustCrypto
[zeroize]: https://en.wikipedia.org/wiki/Zeroisation
[`Zeroize` trait]: https://docs.rs/zeroize/latest/zeroize/trait.Zeroize.html
[Documentation]: https://docs.rs/zeroize/
[Zeroing memory securely is hard]: http://www.daemonology.net/blog/2014-09-04-how-to-zero-a-buffer.html
[core::ptr::write_volatile]: https://doc.rust-lang.org/core/ptr/fn.write_volatile.html
[core::sync::atomic]: https://doc.rust-lang.org/stable/core/sync/atomic/index.html
[good cryptographic hygiene]: https://github.com/veorq/cryptocoding#clean-memory-of-secret-data
Á ## UsageÁëú ### TraitsÁþúü‚b_ The [`Zeroize`] trait is the core API of this crate. It's intended to be impl'd on values thatÁüå^[ may-or-may-not contain secrets, for example the `zeroize` crate itself defines them on theÁüÄ[X core integers e.g. `u8`, `u16`, `i8`, `i16`, as well as arrays thereof. Its core API isÁü ^[ [`Zeroize::zeroize`], a method which takes `&mut self` and writes over the type's internalÁüÿC@ memory with some placeholder value, typically some form of `0`.ÁÃúüÇb_ The [`DefaultIsZeroes`] marker trait can be impl'd on types which have a [`Default`] impl thatÁüª_\ can be used for [`Zeroize`]. Types which implement this trait receive a blanket impl of theÁ´Š [`Zeroize`] trait.Á¡úü¥da We recommend that types which always contain secrets, and especially ones which need to maintainÁüŠ da complex invariants, do NOT impl the [`Zeroize`] trait, but instead provide a [`Drop`] impl whichÁüï b_ takes care of erasing the secret values from memory directly. Such types can mark that they'reÁüÒ
_\ doing this with the [`ZeroizeOnDrop`] marker trait. Note that [`ZeroizeOnDrop`] is *just* aÁü² _\ marker trait, and making it actually work requires actually providing a [`Drop`] impl whichÁü’ $! takes care of zeroizing secrets.Á· úü» `] Why not impl [`Zeroize`] for such types, e.g. a `SecretKey` type? The problem is [`Zeroize`]Áüœ
[X would effectively leave such types in an invalid state, and a sort of use-after-zeroizeÁüø
^[ condition becomes possible. For that reason, we recommend these types automatically handleÁü×0- zeroization in their [`Drop`] handler alone.Áˆú¼Œ ### Supported typesÁ¤úü¨PM The [`Zeroize`] trait is impl'd on all of Rust's core scalar types includingÁüù)& integers, floats, `bool`, and `char`.Á£úü§OL Additionally, it's implemented on slices and `IterMut`s of the above types.Á÷úüûKH When the `alloc` feature is enabled (which it is by default), it's alsoÁüÇRO impl'd for `Vec<T>` for the above types as well as `String`, where it providesÁüšPM [`Vec::clear`] / [`String::clear`]-like behavior (truncating to zero-length)ÁüëHE but ensures the backing memory is securely zeroed with some caveats.Á´úü¸PM With the `std` feature enabled (which it is **not** by default), [`Zeroize`]Áü‰RO is also implemented for [`CString`]. After calling `zeroize()` on a `CString`,ÁüÜFC its internal buffer will contain exactly one nul byte. The backingÁü£OL memory is zeroed by converting it to a `Vec<u8>` and back into a `CString`.ÁüóYV (NOTE: see "Stack/Heap Zeroing Notes" for important `Vec`/`String`/`CString` details)ÁÍúüÑFC [`CString`]: https://doc.rust-lang.org/std/ffi/struct.CString.htmlÁ˜úüœJG The [`DefaultIsZeroes`] marker trait can be impl'd on types which alsoÁüçNK impl [`Default`], which implements [`Zeroize`] by overwriting a value withÁ´¶ the default value.ÁÍúìÑ ### Custom Derive SupportÁïúüóA> This crate has custom derive support for the `Zeroize` trait,ÁüµEB gated under the `zeroize` crate's `zeroize_derive` Cargo feature,ÁüûDA which automatically calls `zeroize()` on all members of a structÁ¤À or tuple struct.ÁÕúüÙ'$ Attributes supported for `Zeroize`:Áú´… On the item level:ÁüœB? - `#[zeroize(drop)]`: *deprecated* use `ZeroizeOnDrop` insteadÁüßHE - `#[zeroize(bound = "T: MyTrait")]`: this replaces any trait boundsĄ́ inferred by zeroizeÁÂú¼Æ On the field level:ÁüÞNK - `#[zeroize(skip)]`: skips this field or variant when calling `zeroize()`Á­úü±-* Attributes supported for `ZeroizeOnDrop`:Áßú¼ã‘éüûN²éÊúüÎ! Example which derives `Drop`:Áðú ```Áüü(% # #[cfg(feature = "zeroize_derive")]Á # {Áü­*' use zeroize::{Zeroize, ZeroizeOnDrop};ÁØúüÜ+( // This struct will be zeroized on dropÁüˆ %" #[derive(Zeroize, ZeroizeOnDrop)]Áô®  struct MyStruct([u8; 32]);Á # }Á¶ëÝ úüá GD Example which does not derive `Drop` (useful for e.g. `Copy` types)Á©!ú<­!¶ëüµ!&# #[cfg(feature = "zeroize_derive")]Á<Ü!øëÌä! use zeroize::Zeroize;Áþ!úü‚"1. // This struct will *NOT* be zeroized on dropÁü´"# #[derive(Copy, Clone, Zeroize)]ÁôØ"¬í<÷"Óí<ÿ"¶ë‡#úü‹#&# Example which only derives `Drop`:Á²#ú<¶#¶ëü¾#(Çë<ç#øëüï# use zeroize::ZeroizeOnDrop;Á$úü“$+Éìä¿$ #[derive(ZeroizeOnDrop)]ÁôÜ$¬í<û$Óí<ƒ%¶ë%úü%FC ### `Zeroizing<Z>`: wrapper for zeroizing arbitrary values on dropÁÖ%úüÚ%HE `Zeroizing<Z: Zeroize>` is a generic wrapper type that impls
q8 )µ p8*æ'o8Ül+¢.n8-ßm8úH.öl8ªB/;;;”ôF;\©Hì¼Hü‰H<­HÉ<=0À¤F É
t\ __arm_mte_create_random_tagÁÝÇ  ù… __arm_mte_increment_tagÁ½¯ û… __arm_mte_exclude_tagÁ­ó þ… __arm_mte_set_tagÁ €† __arm_mte_get_tagÁ÷ ‚† __arm_mte_ptrdiffÁè  „† __rndrÁ5ç  __rndrrsÁEÐ   vcopy_lane_s64Áuù ž† vcopy_lane_u64Áu ¡† vcopy_lane_p64Áu¤ ¤† vcopy_lane_f64Áu»! §† vcopy_laneq_s64Á}æ$ ª† vcopy_laneq_u64Á}Ý( ­† vcopy_laneq_p64Á}×, °† vcopy_laneq_f64Á}Ñ0 ³† vld1_dup_f64Áe»4 ¶†
vld1q_dup_f64Ámë6 ·†
vld1_lane_f64Ám‰: ¹† vld1q_lane_f64Áu¯= »† vbsl_f64ÁEðA ½† vbsl_p64ÁE¦E ¾† vbslq_f64ÁM“H ¿† vbslq_p64ÁMÔK À† vadd_f64ÁE¶N Á† vaddq_f64ÁM´P † vadd_s64ÁE²R Æ vadd_u64ÁE©T Ć vaddd_s64ÁM£V ņ vaddd_u64ÁMX Ɔ vext_p64ÁE Z dž vext_f64ÁEî\ Ɇ
vdup_n_p64ÁU _ ˆ
vdup_n_f64ÁU¹a ̆ vdupq_n_p64Á]Åc ͆ vdupq_n_f64Á]æe Ά
vmov_n_p64ÁUôg φ
vmov_n_f64ÁU÷i І vmovq_n_p64Á]ûk ц vmovq_n_f64Á]€n Ò†
vget_high_f64Ám†p Ó†
vget_high_p64Ám­r Ô† vget_low_f64ÁeÚt Õ† vget_low_p64Áe€w Ö†
vget_lane_f64Ámžz ׆ vgetq_lane_f64ÁuÚ} Ù† vcombine_f64Áe Û† vshld_n_s64Á]Ï‚ ܆ vshld_n_u64Á]ö„ Þ† vshrd_n_s64Á]¥‡ à† vshrd_n_u64Á]ˆŠ ↠vsrad_n_s64Á]— ä† vsrad_n_u64Á]ÿ æ† _PREFETCH_READÁu£ ì† _PREFETCH_WRITEÁ}´ í† _PREFETCH_LOCALITY0ÁÆ î† _PREFETCH_LOCALITY1ÁÜ ï† _PREFETCH_LOCALITY2Áò ð† _PREFETCH_LOCALITY3Áˆ ñ† _prefetchÁMæ ò† __dmbÁ- Û„ __dsbÁ-‡ Ý„ __isbÁ-º! ß„ SYÁãú¼„ Ó°½„ STÁ븄 €±Ä ISHÁµ¸Ä„ ­±Å„ ISHSTÁ-ö¸Æ„ ۱DŽ NSHÁĸȄ ‹²É„ NSHSTÁ-ƒ¸Ê„ ¹²Ë„ OSHÁÓ ¸Ì„ é²Í„ OSHSTÁ-” ¸΄ —³Ï„ LDÁ¦¹Ò„ dzÓ„ ISHLDÁ-ä¹Ô„ ô³Õ„ NSHLDÁ-¦¹Ö„ ¤´ׄ OSHLDÁ-ê¹Ø„ Ô´Ù„ __wfiÁ-óû ô„ __wfeÁ-Ç û õ„ __sevÁ-é
û ö„ __sevlÁ5û ÷„ __yieldÁ=¯û ø„ __nopÁ-ñû ù„ µç‘
vqtbl1q_u8ÁUá ”³ vtbl1_u8ÁEí Á¹ int8x8_tÁEž Þ‘ poly8x8_tÁMþ
ð‘ int16x4_tÁMéù‘ ¾‚’
poly16x4_tÁU‹’ int32x2_tÁM®”’ ÈU™ float32x2_tÁ]…¦’ int64x1_tÁMò¯’ Ò¸’
poly64x1_tÁUÉÁ’ int8x16_tÁMºÊ’ ùÓ’
poly8x16_tÁU™Ü’ int16x8_tÁMˆå’ ƒî’
poly16x8_tÁUå÷’ int32x4_tÁMÓ€“ ‰“ float32x4_tÁ]®’“ int64x2_tÁMœ›“ ¤“
poly64x2_tÁUõ­“ float16x4_tÁ]¾"Ø“ float16x8_tÁ]®#á“
int8x8x2_tÁU&ê“ µ¼ë“
int8x8x3_tÁU„)ô“ é¼õ“
int8x8x4_tÁUÿ+ÿ“ ½€” int8x16x2_tÁ]‰/‹” ѽŒ” int8x16x3_tÁ]û1•” †¾–” int8x16x4_tÁ]û4 ” »¾¡” uint8x8x2_tÁ]Š8¬” ð¾­” uint8x8x3_tÁ]ü:¶” ¥¿·” uint8x8x4_tÁ]ü=Á” Ú¿” uint8x16x2_tÁeŒAÍ” ÀΔ uint8x16x3_tÁeD×” ÅÀØ” uint8x16x4_tÁe‡Gâ” ûÀã” poly8x8x2_tÁ]®Jî” ±Áï” poly8x8x3_tÁ] Mø” æÁù” poly8x8x4_tÁ] Pƒ• ›Â„• poly8x16x2_tÁe°S Рpoly8x16x3_tÁe¦V™• †Ãš• poly8x16x4_tÁe«Y¤• ¼Ã¥• int16x4x2_tÁ]Ò\°• òñ• int16x4x3_tÁ]Ä_º• §Ä»• int16x4x4_tÁ]ÄbÅ• ÜÄÆ• int16x8x2_tÁ]ÓeÑ• ‘ÅÒ• int16x8x3_tÁ]ÅhÛ• ÆÅÜ• int16x8x4_tÁ]Åkæ• ûÅç• uint16x4x2_tÁeÕnò• °Æó• uint16x4x3_tÁeËqü• æÆý• uint16x4x4_tÁeÐt‡– œÇˆ– uint16x8x2_tÁeøw“– ÒÇ”– uint16x8x3_tÁeîz ˆÈž– uint16x8x4_tÁeó}¨– ¾È©– poly16x4x2_tÁe´– ôȵ– poly16x4x3_tÁe‘„¾– «É¿– poly16x4x4_tÁe–‡É– âÉÊ– poly16x8x2_tÁe¾ŠÕ– ™ÊÖ– poly16x8x3_tÁe´ß– ÐÊà– poly16x8x4_tÁe¹ê– ‡Ëë– int32x2x2_tÁ]à“ö– ¾Ë÷– int32x2x3_tÁ]Ò–€— ôË int32x2x4_tÁ]Ò™‹— ªÌŒ— int32x4x2_tÁ]᜗— à̘— int32x4x3_tÁ]ÓŸ¡— –Í¢— int32x4x4_tÁ]Ó¢¬— ÌÍ­— uint32x2x2_tÁe㥸— ‚ι— uint32x2x3_tÁeÙ¨— ¹Î× uint32x2x4_tÁeÞ«Í— ðÎΗ uint32x4x2_tÁe†¯Ù— §ÏÚ— uint32x4x3_tÁeü±ã— ÞÏä— uint32x4x4_tÁeµî— •Ðï—
float16x4x2_tÁm¬¸ú— ÌÐû—
float16x4x3_tÁm©»„˜ „Ñ…˜
float16x4x4_tÁm¶¾˜ ¼Ñ˜
float16x8x2_tÁmæÁ›˜ ôÑœ˜
float16x8x3_tÁmãÄ¥˜ ¬Ò¦˜
float16x8x4_tÁmðǰ˜ äÒ±˜
float32x2x2_tÁmžË¼˜ œÓ½˜
float32x2x3_tÁm˜ÎƘ ÔÓǘ
float32x2x4_tÁm¢Ñј ŒÔÒ˜
float32x4x2_tÁmÐÔݘ ÄÔÞ˜
float32x4x3_tÁmÊ×ç˜ üÔè˜
float32x4x4_tÁmÔÚò˜ ´Õó˜ int64x1x2_tÁ]€Þþ˜ ìÕÿ˜ int64x1x3_tÁ]òàˆ™ ¢Ö‰™ int64x1x4_tÁ]òã“™ ØÖ”™ int64x2x2_tÁ]矙 Ž× ™ int64x2x3_tÁ]óé©™ Äת™ int64x2x4_tÁ]óì´™ ú×µ™ uint64x1x2_tÁeƒðÀ™ °ØÁ™ uint64x1x3_tÁeùòÊ™ çØË™ uint64x1x4_tÁeþõÕ™ žÙÖ™ uint64x2x2_tÁe¦ùá™ ÕÙâ™ uint64x2x3_tÁeœüë™ ŒÚì™ uint64x2x4_tÁe¡ÿö™ ÃÚ÷™ poly64x1x2_tÁeÉ‚‚š úÚƒš poly64x1x3_tÁe¿…Œš ±Ûš poly64x1x4_tÁeĈ—š èÛ˜š poly64x2x2_tÁeì‹£š ŸÜ¤š poly64x2x3_tÁe⎭š ÖÜ®š poly64x2x4_tÁeç
¦É òÞ§É
float64x2x2_tÁmÈ ²É ©ß³É
float64x2x3_tÁm¤¼É àß½É
float64x2x4_tÁmÇÉ —àÈÉ __crc32bÁEõ Åá __crc32cbÁM¡ Èá __crc32chÁMÁ Ëá __crc32cwÁMô" Îá __crc32hÁE0 Ñá __crc32wÁE«7 Ôá vaba_s16ÁEöŠ ×á vaba_s32ÁE Øá vaba_s8Á=¨— Ùá vaba_u16ÁE¼ Úá vaba_u32ÁEÚ£ Ûá vaba_u8Á=ö© Üá vabal_s8ÁE’° Ýá vabal_s16ÁMˆ· Þá vabal_s32ÁM„¾ ßá vabal_u8ÁE€Å àá vabal_u16ÁMÈË áá vabal_u32ÁM•Ò âá vabaq_s16ÁMÜØ ãá vabaq_s32ÁMúÞ äá vabaq_s8ÁE–å åá vabaq_u16ÁM²ë æá vabaq_u32ÁMÔñ çá vabaq_u8ÁEô÷ èá vabd_f16ÁEÈþ éá vabdq_f16ÁM܇ ìá vabd_f32ÁEÆ ïá vabdq_f32ÁM®™ òá vabd_s8Á=Š¢ õá vabdq_s8ÁEͪ øá vabd_s16ÁEœ³ ûá vabdq_s16ÁMì» þá vabd_s32ÁE¾Ä â vabdq_s32ÁMŽÍ „â vabd_u8Á=ÞÕ ‡â vabdq_u8ÁE§Þ Šâ vabd_u16ÁEüæ â vabdq_u16ÁMÒï â vabd_u32ÁEªø “â vabdq_u32ÁM€ –â vabdl_s8ÁEω ™â vabdl_s16ÁM šâ vabdl_s32ÁMº– ›â vabdl_u8ÁEòœ œâ vabdl_u16ÁMõ¢ â vabdl_u32ÁMü¨ žâ vabs_f16ÁE¢¯ Ÿâ vabsq_f16ÁM®µ  â vabs_f32ÁEŽ» ¡â vabsq_f32ÁMîÀ ¢â vabs_s8Á=ÉÆ £â vabsq_s8ÁEÍ ¤â vabs_s16ÁEÖÓ ¥â vabsq_s16ÁM Ú ¦â vabs_s32ÁEêà §â vabsq_s32ÁM´ç ¨â vabsh_f16ÁM’í ©â vadd_f16ÁE°ó ªâ vaddq_f16ÁMÓù «â vadd_f32ÁE³ÿ ¬â vadd_s16ÁE‘… ­â vadd_s32ÁEéŠ ®â vadd_s8Á=À ¯â vadd_u16ÁE”– °â vadd_u32ÁEï› ±â vadd_u8Á=É¡ ²â vaddq_f32ÁM¢§ ³â vaddq_s16ÁM­ ´â vaddq_s32ÁMܲ µâ vaddq_s64ÁM¶¸ ¶â vaddq_s8ÁE¾ ·â vaddq_u16ÁMèà ¸â vaddq_u32ÁMÅÉ ¹â vaddq_u64ÁM¢Ï ºâ vaddq_u8ÁEþÔ »â vadd_p8Á=àÚ ¼â vaddq_p8ÁE¿à ½â vadd_p16ÁE¢æ ¾â vaddq_p16ÁM†ì ¿â vadd_p64ÁEêñ Àâ vaddq_p64ÁMÎ÷ Áâ vaddh_f16ÁM¹ü Ââ vaddhn_high_s16Á}“‚ Ãâ vaddhn_high_s32Á}¹‰ Äâ vaddhn_high_s64Á}à Åâ vaddhn_high_u16Á}Á— Æâ vaddhn_high_u32Á}ìž Çâ vaddhn_high_u64Á}û¥ Èâ
vaddhn_s16ÁUì¬ Éâ
vaddhn_s32ÁU„³ Êâ
vaddhn_s64ÁUž¹ Ëâ
vaddhn_u16ÁU¸¿ Ìâ
vaddhn_u32ÁUÔÅ Íâ
vaddhn_u64ÁUòË Îâ vaddl_high_s16ÁužÒ Ïâ vaddl_high_s32ÁuùÙ Ðâ
vaddl_high_s8ÁmÇá Ñâ vaddl_high_u16ÁuÃé Òâ vaddl_high_u32Áu¥ñ Óâ
vaddl_high_u8Ámúø Ôâ vaddl_s16ÁMå€ Õâ vaddl_s32ÁM§‡ Öâ vaddl_s8ÁEè ×â vaddl_u16ÁM§” Øâ vaddl_u32ÁMîš Ùâ vaddl_u8ÁE´¡ Úâ
vaddq_p128ÁU÷§ Ûâ vaddw_high_s16Áu­ Üâ vaddw_high_s32Áu§´ Ýâ
vaddw_high_s8Ám…» Þâ vaddw_high_u16ÁuúÁ ßâ vaddw_high_u32ÁuäÈ àâ
vaddw_high_u8ÁmÇÏ áâ vaddw_s16ÁM®Ö ââ vaddw_s32ÁM½Ü ãâ vaddw_s8ÁEËâ äâ vaddw_u16ÁMØè åâ vaddw_u32ÁMëî æâ vaddw_u8ÁEýô çâ vaesdq_u8ÁM¨ú èâ vaeseq_u8ÁMú ëâ vaesimcq_u8Á]̉ îâ
vaesmcq_u8ÁU÷ ñâ vand_s8Á=’™ ôâ vandq_s8ÁEíž õâ vand_s16ÁE̤ öâ vandq_s16ÁM¬ª ÷â vand_s32ÁEŒ° øâ vandq_s32ÁMìµ ùâ vand_s64ÁEÌ» úâ vandq_s64ÁM¬Á ûâ vand_u8Á=‹Ç üâ vandq_u8ÁEéÌ ýâ vand_u16ÁEËÒ þâ vandq_u16ÁM®Ø ÿâ vand_u32ÁE‘Þ €ã vandq_u32ÁMôã ã vand_u64ÁE×é ‚ã vandq_u64ÁMºï ƒã vbic_s16ÁE¤õ „ã vbic_s32ÁE¹û …ã vbic_s64ÁEÎ †ã vbic_s8Á=⇠‡ã vbicq_s16ÁMó ˆã vbicq_s32ÁMŠ” ‰ã vbicq_s64ÁM¡š Šã vbicq_s8ÁE·  ‹ã vbic_u16ÁE̦ Œã vbic_u32ÁEï¬ ã vbic_u64ÁE’³ Žã vbic_u8Á=´¹ ã vbicq_u16ÁMÓ¿ ã vbicq_u32ÁMøÅ ‘ã vbicq_u64ÁMÌ ’ã vbicq_u8ÁEÁÒ “ã vbsl_f16ÁE†Ù ”ã vbslq_f16ÁMËà •ã vbsl_f32ÁEäç –ã vbsl_p16ÁEüî —ã vbsl_p8Á=ö ˜ã vbsl_s16ÁEŸý ™ã vbsl_s32ÁE±„  šã vbsl_s64ÁEË  ›ã vbsl_s8Á=Ô’  œã vbslq_f32ÁMá™  ã vbslq_p16ÁMû   žã vbslq_p8ÁE‘¨  Ÿã vbslq_s16ÁM§¯   ã vbslq_s32ÁM»¶  ¡ã vbslq_s64ÁMϽ  ¢ã vbslq_s8ÁEâÄ  £ã vbsl_u16ÁEôË  ¤ã vbsl_u32ÁEóÒ  ¥ã vbsl_u64ÁEòÙ  ¦ã vbsl_u8Á=ðà  §ã vbslq_u16ÁMêç  ¨ã vbslq_u32ÁMëî  ©ã vbslq_u64ÁMìõ  ªã vbslq_u8ÁEìü  «ã vcage_f16ÁMÇ„
 ‹
vcageq_f16ÁUì
 ¯ã vcage_f32ÁMç–
 ²ã
vcageq_f32ÁUàŸ
 µã vcagt_f16ÁMþ¨
 ¸ã
vcagtq_f16ÁUš²
 »ã vcagt_f32ÁMŒ»
 ¾ã
vcagtq_f32ÁUüÃ
 Áã vcale_f16ÁM Í
 Äã
vcaleq_f16ÁUÒÓ
 Åã vcale_f32ÁMÙÙ
 Æã
vcaleq_f32ÁUßß
 Çã vcalt_f16ÁM‰æ
 Èã
vcaltq_f16ÁU²ì
 Éã vcalt_f32ÁM°ò
 Êã
vcaltq_f32ÁU­ø
 Ëã vceq_f16ÁEÈþ
 Ìã vceqq_f16ÁMê„  Íã vceq_f32ÁEàŠ  Îã vceqq_f32ÁMÖ  Ïã vceq_s8Á=Ë–  Ðã vceqq_s8ÁE¸œ  Ñã vceq_s16ÁEª¢  Òã vceqq_s16ÁM¨  Óã vceq_s32ÁE®  Ôã vceqq_s32ÁMƒ´  Õã vceq_u8Á=ô¹  Öã vceqq_u8ÁEã¿  ×ã vceq_u16ÁE×Å  Øã vceqq_u16ÁMÌË  Ùã vceq_u32ÁEÁÑ  Úã vceqq_u32ÁM¶×  Ûã vceq_p8Á=©Ý  Üã vceqq_p8ÁE˜ã  Ýã vcge_f16ÁEÇé  Þã vcgeq_f16ÁMùï  ßã vcge_f32ÁEÿõ  àã vcgeq_f32ÁM…ü  áã vcge_s8Á=€‚  âã vcgeq_s8ÁEó‡  ãã vcge_s16ÁEë  äã vcgeq_s16ÁMä“  åã vcge_s32ÁEÝ™  æã vcgeq_s32ÁMÖŸ  çã vcge_u8Á=Ï¥  èã vcgeq_u8ÁEÆ«  éã vcge_u16ÁE±  êã vcgeq_u16ÁM¿·  ëã vcge_u32ÁE¼½  ìã vcgeq_u32ÁM¹Ã  íã vcgez_f16ÁMòÉ  îã
vcgezq_f16ÁUÜÐ  ïã vcgt_f16ÁEÈ×  ðã vcgtq_f16ÁMñÝ  ñã vcgt_f32ÁEîã  òã vcgtq_f32ÁMëé  óã vcgt_s8Á=Ýï  ôã vcgtq_s8ÁEÇõ  õã vcgt_s16ÁE¶û  öã vcgtq_s16ÁM¦
 ÷ã vcgt_s32ÁE–‡
 øã vcgtq_s32ÁM†
 ùã vcgt_u8Á=ö’
 úã vcgtq_u8ÁEä˜
 ûã vcgt_u16ÁEמ
 üã vcgtq_u16ÁMˤ
 ýã vcgt_u32ÁE¿ª
 þã vcgtq_u32ÁM³°
 ÿã vcgtz_f16ÁMà¶
 ۊ
vcgtzq_f16ÁU¾½
 ä vcle_f16ÁE°Ä
 ‚ä vcleq_f16ÁMßÊ
 ƒä vcle_f32ÁEâÐ
 „ä vcleq_f32ÁMåÖ
 …ä vcle_s8Á=ÝÜ
 †ä vcleq_s8ÁEÍâ
 ‡ä vcle_s16ÁEÂè
 ˆä vcleq_s16ÁM¸î
 ‰ä vcle_s32ÁE®ô
 Šä vcleq_s32ÁM¤ú
 ‹ä vcle_u8Á=š€ Œä vcleq_u8ÁEކ ä vcle_u16ÁE‡Œ Žä vcleq_u16ÁM ä vcle_u32ÁEû— ä vcleq_u32ÁMõ ‘ä vclez_f16ÁM«¤ ’ä
vclezq_f16ÁU’« “ä vcls_s8Á=± ”ä vclsq_s8ÁEÓ¹ —ä vcls_s16ÁEîÁ šä vclsq_s16ÁMŠÊ ä vcls_s32ÁE¨Ò  ä vclsq_s32ÁMÄÚ £ä vcls_u8Á=Ûâ ¦ä vclsq_u8ÁE¶è §ä vcls_u16ÁE•î ¨ä vclsq_u16ÁMõó ©ä vcls_u32ÁEÖù ªä vclsq_u32ÁM¶ÿ «ä vclt_f16ÁEÔ… ¬ä vcltq_f16ÁMú‹ ­ä vclt_f32ÁEô‘ ®ä vcltq_f32ÁMî— ¯ä vclt_s8Á=Ý °ä vcltq_s8ÁEÄ£ ±ä vclt_s16ÁE°© ²ä vcltq_s16ÁM¯ ³ä vclt_s32ÁEе ´ä vcltq_s32ÁM÷º µä vclt_u8Á=äÀ ¶ä vcltq_u8ÁEÏÆ ·ä vclt_u16ÁE¿Ì ¸ä vcltq_u16ÁM°Ò ¹ä vclt_u32ÁE¡Ø ºä vcltq_u32ÁM’Þ »ä vcltz_f16ÁM·ä ¼ä
vcltzq_f16ÁUë ½ä vclz_s8Á=½ñ ¾ä vclzq_s8ÁE“÷ ¿ä vclz_s16ÁEíü Àä vclzq_s16ÁMÈ‚ Áä vclz_s32ÁE£ˆ Âä vclzq_s32ÁMþ Ãä vclz_u16ÁEú“ Ää vclzq_u16ÁM¿¡ Åä vclz_u32ÁE ¯ Æä vclzq_u32ÁMÙ¼ Çä vclz_u8Á= Ê Èä vclzq_u8ÁEï× Éä vcnt_s8Á=—æ Êä vcntq_s8ÁEìë Ëä vcnt_u8Á=äñ Ìä vcntq_u8ÁE¯ÿ Íä vcnt_p8Á=ö Îä vcntq_p8ÁEÁ› Ïä vcombine_f16Áeé© Ðä vcombine_f32Áe«¯ Ñä vcombine_s8Á]à´ Òä vcombine_s16Áe·º Óä vcombine_s32Áeó¿ Ôä vcombine_s64Áe£Å Õä vcombine_u8Á]ÌÊ Öä vcombine_u16Áe¦Ð ×ä vcombine_u32ÁeåÕ Øä vcombine_u64Áe˜Û Ùä vcombine_p8Á]Äà Úä vcombine_p16Áežæ Ûä vcombine_p64ÁeÝë Üä vcreate_f16Á]ûò Ýä vcreate_f32Á]߀ Þä
vcreate_s8ÁUÓ ßä vcreate_s16Á]Κ àä vcreate_s32Á]ç áä vcreate_s64Á]‘´ âä
vcreate_u8ÁUžº ãä vcreate_u16Á]œÇ ää vcreate_u32Á]”Ô åä vcreate_u64Á]åà æä
vcreate_p8ÁUóæ çä vcreate_p16Á]ñó èä vcreate_p64Á]Ì€ éä vcvt_f16_f32Áe¦‡ êä vcvt_f16_s16Áe ëä
vcvtq_f16_s16ÁmÝ“ ìä vcvt_f16_u16Áeø™ íä
vcvtq_f16_u16Ám”  îä vcvt_f32_f16Áe÷¦ ïä vcvt_f32_s32Áeç¬ ðä
vcvtq_f32_s32ÁmÖ² ñä vcvt_f32_u32ÁeŸ òä
vcvtq_f32_u32Ámµ¾ óä vcvt_n_f16_s16Áu…Å ôä vcvtq_n_f16_s16Á} Ï øä vcvt_n_f16_u16Áu½Ù üä vcvtq_n_f16_u16Á}Úã €å vcvt_n_f32_s32Áu•÷ „å vcvtq_n_f32_s32Á}¹ý ˆå vcvt_n_f32_u32Áu÷ Œå vcvtq_n_f32_u32Á} å vcvt_n_s16_f16ÁuÅŸ ”å vcvtq_n_s16_f16Á}è© ˜å vcvt_n_s32_f32Áuä½ œå vcvtq_n_s32_f32Á}ŸÄ  å vcvt_n_u16_f16ÁuÚÍ ¤å vcvtq_n_u16_f16Á}”Ø ¨å vcvt_n_u32_f32Áu–ì ¬å vcvtq_n_u32_f32Á}Óò °å vcvt_s16_f16ÁeÝû ´å
vcvtq_s16_f16Ám–‚ µå vcvt_s32_f32Áe£ˆ ¶å
vcvtq_s32_f32Ámþ ¹å vcvt_u16_f16Áe‰š ¼å
vcvtq_u16_f16ÁmÅ  ½å vcvt_u32_f32ÁeÕ¦ ¾å
vcvtq_u32_f32Ám´¯ Áå
vdot_lane_s32Ám׸ Äå vdotq_lane_s32ÁuâË Æå
vdot_lane_u32Ámòß Èå vdotq_lane_u32Áuó Êå vdot_laneq_s32Áu Ìå vdotq_laneq_s32Á}Œ— Îå vdot_laneq_u32Áu© Ðå vdotq_laneq_u32Á}™º Òå vdot_s32ÁEêÌ Ôå vdotq_s32ÁMÞÕ ×å vdot_u32ÁEÚÞ Úå vdotq_u32ÁMÖç Ýå
vdup_lane_f16Ámóñ àå vdupq_lane_f16ÁuËù âå
vdup_lane_f32Ámº€ äå
vdup_lane_s32Ám¯‡ æå
vdup_lane_u32Ám Ž èå vdupq_lane_f32Áu”• êå vdupq_lane_s32ÁuŸœ ìå vdupq_lane_u32Áu¦£ îå
vdup_lane_p16Ám®ª ðå
vdup_lane_s16Ámš± òå
vdup_lane_u16Ám„¸ ôå vdupq_lane_p16Áuñ¾ öå vdupq_lane_s16ÁußÅ øå vdupq_lane_u16ÁuËÌ úå vdup_lane_p8Áe¶Ó üå vdup_lane_s8ÁeÚ þå vdup_lane_u8Áe‚á €æ
vdupq_lane_p8Ámêç ‚æ
vdupq_lane_s8ÁmÕî „æ
vdupq_lane_u8Ám¾õ †æ
vdup_lane_s64Ám¤ü ˆæ
vdup_lane_u64ÁmÔ‚ Šæ vdup_laneq_f16Áuö‰ Œæ vdupq_laneq_f16Á}Б Žæ vdup_laneq_f32ÁuÁ˜ æ vdup_laneq_s32Áu¸Ÿ ’æ vdup_laneq_u32Áu«¦ ”æ vdupq_laneq_f32Á}¡­ –æ vdupq_laneq_s32Á}®´ ˜æ vdupq_laneq_u32Á}·» šæ vdup_laneq_p16ÁuÁ œæ vdup_laneq_s16Áu¯É žæ vdup_laneq_u16Áu›Ð  æ vdupq_laneq_p16Á}Š× ¢æ vdupq_laneq_s16Á}úÝ ¤æ vdupq_laneq_u16Á}èä ¦æ
vdup_laneq_p8ÁmÕë ¨æ
vdup_laneq_s8Ám¿ò ªæ
vdup_laneq_u8Ám§ù ¬æ vdupq_laneq_p8Áu’€ ®æ vdupq_laneq_s8Áu€‡ °æ vdupq_laneq_u8Áuì ²æ vdup_laneq_s64ÁuÖ” ´æ vdup_laneq_u64ÁuÊ› ¶æ
vdup_n_f16ÁUè¡ ¸æ vdupq_n_f16Á]¦§ ¹æ
vdup_n_f32ÁU“­ ºæ
vdup_n_p16ÁU‡³ »æ vdup_n_p8ÁM÷¸ ¼æ
vdup_n_s16ÁUå¾ ½æ
vdup_n_s32ÁUÕÄ ¾æ
vdup_n_s64ÁUÃÊ ¿æ vdup_n_s8ÁM±Ð Àæ
vdup_n_u16ÁUÖ Áæ
vdup_n_u32ÁUÜ Âæ
vdup_n_u64ÁUÿá Ãæ vdup_n_u8ÁMïç Äæ vdupq_n_f32Á]Þí Åæ vdupq_n_p16Á]Ôó Ææ
vdupq_n_p8ÁUÆù Çæ vdupq_n_s16Á]¸ÿ Èæ vdupq_n_s32Á]ª… Éæ vdupq_n_s64Á]™‹ Êæ
vdupq_n_s8ÁU‰‘ Ëæ vdupq_n_u16Á]ù– Ìæ vdupq_n_u32Á]íœ Íæ vdupq_n_u64Á]Þ¢ Îæ
vdupq_n_u8ÁUШ Ïæ vdupq_lane_s64Áuäº Òæ vdupq_lane_u64ÁuÊÁ Ôæ vdupq_laneq_s64Á}³È Öæ vdupq_laneq_u64Á}£Ï Øæ veor_s8Á=ÛÕ Úæ veorq_s8ÁEÈÛ Ûæ veor_s16ÁE¹á Üæ veorq_s16ÁM«ç Ýæ veor_s32ÁEí Þæ veorq_s32ÁMó ßæ veor_s64ÁEù àæ veorq_s64ÁMóþ áæ veor_u8Á=ä„ âæ veorq_u8ÁEÔŠ ãæ veor_u16ÁEÈ äæ veorq_u16ÁM½– åæ veor_u32ÁE²œ ææ veorq_u32ÁM§¢ çæ veor_u64ÁEœ¨ èæ veorq_u64ÁM‘® éæ vext_f16ÁEå´ êæ vext_f32ÁEÓ½ ìæ vext_s32ÁEÌÅ îæ vext_u32ÁE¿Í ðæ vext_s64ÁEñÕ òæ vext_u64ÁEäÜ ôæ vext_s8Á=ã öæ vextq_s16ÁMÂî øæ vext_u8Á=êù úæ vextq_u16ÁM’… üæ vext_p8Á=½ þæ vextq_p16ÁMå› €ç vextq_f16ÁM¾§ ‚ç vextq_f32ÁMî² „ç vext_s16ÁEÝ» †ç vextq_s32ÁMÆÄ ˆç vext_u16ÁE¯Í Šç vextq_u32ÁM›Ö Œç vext_p16ÁE‡ß Žç vextq_s64ÁMïç ç vextq_u64ÁMàï ’ç vextq_s8ÁEÙ÷ ”ç vextq_u8ÁEæ’ –ç vextq_p8ÁEö­ ˜ç vfma_f16ÁE•É šç vfmaq_f16ÁMäÏ ›ç vfma_f32ÁE†Ö œç vfmaq_f32ÁM¨Ü ç
vfma_n_f32ÁUÌâ žç vfmaq_n_f32Á]ðè Ÿç vfms_f16ÁEþï  ç vfmsq_f16ÁMÀ÷ ¡ç vfms_f32ÁE˜þ ¢ç vfmsq_f32ÁMï„ £ç
vfms_n_f32ÁUÏ‹ ¤ç vfmsq_n_f32Á]ø‘ ¥ç
vget_high_f16Ámë— ¦ç vget_low_f16ÁeÏ §ç
vget_high_f32ÁmÜ£ ¨ç
vget_high_p16Ámä© ©ç vget_high_p8Áeï¯ ªç
vget_high_s16Ám‹¶ «ç
vget_high_s32Ám•¼ ¬ç vget_high_s8Áe˜Â ­ç
vget_high_u16Ám²È ®ç
vget_high_u32Ám¾Î ¯ç vget_high_u8ÁeÃÔ °ç
vget_high_s64ÁmßÚ ±ç
vget_high_u64Ámèà ²ç
vget_lane_f16Áméæ ³ç vgetq_lane_f16Áu™í µç
vget_lane_f32Ámûò ·ç
vget_lane_p16ÁmÜø ¹ç vget_lane_p8Áe»þ »ç
vget_lane_s16Ám˜„ ½ç
vget_lane_s32Ám÷‰ ¿ç vget_lane_s8ÁeÕ Áç
vget_lane_u16Ám±• Ãç
vget_lane_u32Ám‘› Åç vget_lane_u8Áeð  Çç vgetq_lane_f32ÁuΦ Éç vgetq_lane_p16Áu±¬ Ëç vgetq_lane_p64Áu“² Íç
vgetq_lane_p8Ámô· Ïç vgetq_lane_s16ÁuÔ½ Ñç vgetq_lane_s32ÁuµÃ Óç vgetq_lane_s64Áu–É Õç
vgetq_lane_s8ÁmöÎ ×ç vgetq_lane_u16ÁuÕÔ Ùç vgetq_lane_u32Áu·Ú Ûç vgetq_lane_u64Áu™à Ýç
vgetq_lane_u8Ámúå ßç
vget_lane_p64ÁmÙë áç
vget_lane_s64Ám±ñ ãç
vget_lane_u64Ámˆ÷ åç vget_low_f32Áe¦ü çç vget_low_p16Áe¤  èç vget_low_p8Á]¥†  éç vget_low_s16Áe±‹  êç vget_low_s32Áe±  ëç vget_low_s8Á]ª•  ìç vget_low_u16Áe´š  íç vget_low_u32Áe¶Ÿ  îç vget_low_u8Á]±¤  ïç vget_low_s64Áe½©  ðç vget_low_u64Áe¼®  ñç vhadd_s8ÁE§´  òç vhaddq_s8ÁMÔ¼  õç vhadd_s16ÁMÅ  øç
vhaddq_s16ÁUÇÍ  ûç vhadd_s32ÁMƒÖ  þç
vhaddq_s32ÁU½Þ  è vhadd_u8ÁE÷æ  „è vhaddq_u8ÁMªï  ‡è vhadd_u16ÁMé÷  Šè
vhaddq_u16ÁU©€! è vhadd_u32ÁMëˆ! è
vhaddq_u32ÁU«‘! “è vhsub_s16ÁMù™! –è
vhsubq_s16ÁU¿¢! ™è vhsub_s32ÁM‡«! œè
vhsubq_s32ÁUͳ! Ÿè vhsub_s8ÁE“¼! ¢è vhsubq_s8ÁMÌÄ! ¥è vhsub_u8ÁEÍ! ¨è vhsubq_u8ÁMÎÕ! «è vhsub_u16ÁM™Þ! ®è
vhsubq_u16ÁUåæ! ±è vhsub_u32ÁM³ï! ´è
vhsubq_u32ÁUÿ÷! ·è vld1_dup_f16ÁeŠ" ºè
vld1q_dup_f16Ám‰ˆ" ¼è vld1_dup_f32ÁeÑ" ¾è vld1_dup_p16Áe·–" ¿è vld1_dup_p8Á]š" Àè vld1_dup_s16Áeû£" Áè vld1_dup_s32Áeߪ" Âè vld1_dup_s8Á]Á±" Ãè vld1_dup_u16Áe¡¸" Äè vld1_dup_u32Áe†¿" Åè vld1_dup_u8Á]éÅ" Æè
vld1q_dup_f32ÁmËÌ" Çè
vld1q_dup_p16Ám³Ó" Èè vld1q_dup_p8Áe˜Ú" Éè
vld1q_dup_s16Ámýà" Êè
vld1q_dup_s32Ámãç" Ëè
vld1q_dup_s64ÁmÆî" Ìè vld1q_dup_s8Áeªõ" Íè
vld1q_dup_u16ÁmŽü" Îè
vld1q_dup_u32Ámõ‚# Ïè
vld1q_dup_u64ÁmÙ‰# Ðè vld1q_dup_u8Áe¾# Ñè vld1_dup_p64Áe —# Òè vld1_dup_s64ÁeÝŸ# Óè vld1_dup_u64Áe˜¨# Ôè vld1_f16_x2Á]íÈ# Õè vld1_f16_x3Á]›Ï# Öè vld1_f16_x4Á]ÉÕ# ×è vld1q_f16_x2ÁeøÛ# Øè vld1q_f16_x3Áe¨â# Ùè vld1q_f16_x4ÁeØè# Úè vld1_f32_x2Á]¼$ Ûè vld1_f32_x3Á]ðÂ$ Üè vld1_f32_x4Á]ÑÉ$ Ýè vld1q_f32_x2Áe³Ð$ Þè vld1q_f32_x3Áe–×$ ßè vld1q_f32_x4ÁeùÝ$ àè
vld1_lane_f16ÁmÑä$ áè vld1q_lane_f16Áuõë$ ãè
vld1_lane_f32ÁmÓó$ åè
vld1_lane_p16Ám°û$ çè vld1_lane_p8Áe‰ƒ% éè
vld1_lane_s16ÁmàŠ% ëè
vld1_lane_s32Ám¹’% íè
vld1_lane_s64Ámš% ïè vld1_lane_s8ÁeÜ¡% ñè
vld1_lane_u16Ám±©% óè
vld1_lane_u32ÁmŒ±% õè
vld1_lane_u64Ámâ¸% ÷è vld1_lane_u8Áe³À% ùè vld1q_lane_f32Áu‹È% ûè vld1q_lane_p16ÁuêÏ% ýè
vld1q_lane_p8ÁmÇ×% ÿè vld1q_lane_s16Áu¢ß% é vld1q_lane_s32Áuýæ% ƒé vld1q_lane_s64ÁuÓî% …é
vld1q_lane_s8Ám®ö% ‡é vld1q_lane_u16Áu‡þ% ‰é vld1q_lane_u32Áuä…& ‹é vld1q_lane_u64Áu¼& é
vld1q_lane_u8Ám™•& é
vld1_lane_p64Ámòœ& ‘é vld1q_lane_p64ÁuŤ& “é vld1_p64_x2Á]²& •é vld1_p64_x3Á]¦¹& –é vld1_p64_x4Á]ŠÀ& —é vld1q_p64_x2ÁeïÆ& ˜é vld1q_p64_x3ÁeÕÍ& ™é vld1q_p64_x4Áe»Ô& šé
vld1_s8_x2ÁU©ƒ' ›é
vld1_s8_x3ÁU„Š' œé
vld1_s8_x4ÁUß' é vld1q_s8_x2Á]»—' žé vld1q_s8_x3Á]™ž' Ÿé vld1q_s8_x4Á]÷¤'  é vld1_s16_x2Á]Õ«' ¡é vld1_s16_x3Á]´²' ¢é vld1_s16_x4Á]“¹' £é vld1q_s16_x2Áeó¿' ¤é vld1q_s16_x3ÁeÔÆ' ¥é vld1q_s16_x4ÁeµÍ' ¦é vld1_s32_x2Á]•Ô' §é vld1_s32_x3Á]ôÚ' ¨é vld1_s32_x4Á]Óá' ©é vld1q_s32_x2Áe³è' ªé vld1q_s32_x3Áe”ï' «é vld1q_s32_x4Áeõõ' ¬é vld1_s64_x2Á]Õü' ­é vld1_s64_x3Á]´ƒ( ®é vld1_s64_x4Á]“Š( ¯é vld1q_s64_x2Áeó( °é vld1q_s64_x3ÁeÔ—( ±é vld1q_s64_x4Áeµž( ²é
vld1_u8_x2ÁU”¥( ³é
vld1_u8_x3ÁUð«( ´é
vld1_u8_x4ÁU̲( µé vld1q_u8_x2Á]©¹( ¶é vld1q_u8_x3Á]ˆÀ( ·é vld1q_u8_x4Á]çÆ( ¸é vld1_u16_x2Á]ÆÍ( ¹é vld1_u16_x3Á]¦Ô( ºé vld1_u16_x4Á]†Û( »é vld1q_u16_x2Áeçá( ¼é vld1q_u16_x3ÁeÉè( ½é vld1q_u16_x4Áe«ï( ¾é vld1_u32_x2Á]Œö( ¿é vld1_u32_x3Á]ìü( Àé vld1_u32_x4Á]̃) Áé vld1q_u32_x2Áe­Š) Âé vld1q_u32_x3Áe) Ãé vld1q_u32_x4Áeñ—) Äé vld1_u64_x2Á]Òž) Åé vld1_u64_x3Á]²¥) Æé vld1_u64_x4Á]’¬) Çé vld1q_u64_x2Áeó²) Èé vld1q_u64_x3ÁeÕ¹) Éé vld1q_u64_x4Áe·À) Êé
vld1_p8_x2ÁU—Ç) Ëé
vld1_p8_x3ÁUóÍ) Ìé
vld1_p8_x4ÁUÏÔ) Íé vld1q_p8_x2Á]¬Û) Îé vld1q_p8_x3Á]‹â) Ïé vld1q_p8_x4Á]êè) Ðé vld1_p16_x2Á]Éï) Ñé vld1_p16_x3Á]©ö) Òé vld1_p16_x4Á]‰ý) Óé vld1q_p16_x2Áeêƒ* Ôé vld1q_p16_x3ÁeÌŠ* Õé vld1q_p16_x4Áe®‘* Öé
vld1q_dup_p64ÁmÄË* ×é vld2_dup_f16Áe„à* Ùé
vld2q_dup_f16ÁmÆç* Üé vld2_dup_f32Áe­œ+ ßé
vld2q_dup_f32Ám¿¢+ âé vld2_dup_s8Á]Ò¨+ åé vld2q_dup_s8Áe×®+ èé vld2_dup_s16Áeâ´+ ëé
vld2q_dup_s16Ámðº+ îé vld2_dup_s32Áe€Á+ ñé
vld2q_dup_s32ÁmŽÇ+ ôé vld2_dup_p64ÁeäÏ+ ÷é vld2_dup_s64ÁeíÙ+ øé vld2_dup_u64Áe¼â+ ûé vld2_dup_u8Á]Àé+ üé vld2q_dup_u8Áežù+ ýé vld2_dup_u16Áe´Š, þé
vld2q_dup_u16Ám…š, ÿé vld2_dup_u32Áeò©, €ê
vld2q_dup_u32Ám·¹, ê vld2_dup_p8Á]‹É, ‚ê vld2q_dup_p8ÁeéØ, ƒê vld2_dup_p16Áeÿé, „ê
vld2q_dup_p16ÁmÐù, …ê vld2_f16ÁE”–- †ê vld2q_f16ÁMÄ- ‰ê vld2_f32ÁE‘Ï- Œê vld2q_f32ÁMÕ- ê vld2_s8Á=òÚ- ’ê vld2q_s8ÁEÓà- •ê vld2_s16ÁE»æ- ˜ê vld2q_s16ÁM¥ì- ›ê vld2_s32ÁE‘ò- žê vld2q_s32ÁMû÷- ¡ê
vld2_lane_f16ÁmÈ. ¤ê vld2q_lane_f16Áu¹™. ¨ê
vld2_lane_f32Ám«¡. ¬ê vld2q_lane_f32Áuߨ. °ê vld2_lane_s8Áe °. ´ê
vld2_lane_s16Ám¿·. ¸ê vld2q_lane_s16Áué¾. ¼ê
vld2_lane_s32Ám•Æ. Àê vld2q_lane_s32Áu¿Í. Äê vld2_lane_u8Áe¼‹/ Èê
vld2_lane_u16Ámš“/ Êê vld2q_lane_u16Áuþš/ Ìê
vld2_lane_u32Ámã¢/ Îê vld2q_lane_u32ÁuǪ/ Ðê vld2_lane_p8Áe«²/ Òê
vld2_lane_p16Ám‰º/ Ôê vld2q_lane_p16ÁuíÁ/ Öê vld2_p64ÁEšÉ/ Øê vld2_s64ÁEÐÒ/ Ùê vld2_u64ÁEûÚ/ Üê vld2_u8Á=¹á/ Ýê vld2q_u8ÁEôç/ Þê vld2_u16ÁE²î/ ßê vld2q_u16ÁMòô/ àê vld2_u32ÁE³û/ áê vld2q_u32ÁMó0 âê vld2_p8Á=³ˆ0 ãê vld2q_p8ÁEîŽ0 äê vld2_p16ÁE¬•0 åê vld2q_p16ÁMì›0 æê vld3_dup_f16Áeí¯0 çê
vld3q_dup_f16Ám¯·0 êê vld3_dup_f32ÁeŽ0 íê
vld3q_dup_f32ÁmÙÃ0 ðê vld3_dup_s8Á]îÉ0 óê vld3q_dup_s8ÁeõÏ0 öê vld3_dup_s16Áe‚Ö0 ùê
vld3q_dup_s16Ám’Ü0 üê vld3_dup_s32Áe¤â0 ÿê
vld3q_dup_s32Ám´è0 ‚ë vld3_dup_s64ÁeÆî0 …ë vld3_dup_p64Áeþ¥1 ˆë vld3_dup_u64ÁeͲ1 ‰ë vld3_dup_u8Á]Ó¹1 Šë vld3q_dup_u8ÁeÊ1 ‹ë vld3_dup_u16ÁeÛÜ1 Œë
vld3q_dup_u16Ámþì1 ë vld3_dup_u32ÁeÉý1 Žë
vld3q_dup_u32ÁmÚ2 ë vld3_dup_p8Á]€ž2 ë vld3q_dup_p8Áe¼®2 ‘ë vld3_dup_p16ÁeˆÁ2 ’ë
vld3q_dup_p16Ám«Ñ2 “ë vld3_f16ÁEËî2 ”ë vld3q_f16ÁM¬ô2 •ë vld3_f32ÁEÇø2 –ë vld3q_f32ÁMâü2 —ë vld3_s8Á=ü€3 ˜ë vld3q_s8ÁE…3 ™ë vld3_s16ÁE§‰3 šë vld3q_s16ÁMÀ3 ›ë vld3_s32ÁEÙ‘3 œë vld3q_s32ÁMò•3 ë
vld3_lane_f16Ám·Ù3 žë vld3q_lane_f16Áuøâ3 ¢ë
vld3_lane_f32Ámë3 ¦ë vld3q_lane_f32ÁuŸó3 ªë vld3_lane_s8Áešƒ4 ®ë
vld3_lane_s16Ám’‹4 ²ë vld3q_lane_s16Áu–“4 ¶ë
vld3_lane_s32Ámœ›4 ºë vld3q_lane_s32Áu £4 ¾ë vld3_lane_u8Áe¼Ô4 Âë
vld3_lane_u16ÁmœÜ4 Äë vld3q_lane_u16Áu‚ä4 Æë
vld3_lane_u32Áméë4 Èë vld3q_lane_u32ÁuÏó4 Êë vld3_lane_p8Áeµû4 Ìë
vld3_lane_p16Ám•ƒ5 Îë
vldrq_p128ÁUûÇ; ×ì vmax_f16ÁEßÍ; Øì vmaxq_f16ÁMÈÖ; Ûì vmax_f32ÁE‡ß; Þì vmaxq_f32ÁMÄç; áì vmax_s8Á=‚ð; äì vmaxq_s8ÁEö; åì vmax_s16ÁE½ü; æì vmaxq_s16ÁMÞ‚< çì vmax_s32ÁEÿˆ< èì vmaxq_s32ÁM < éì vmax_u8Á=À•< êì vmaxq_u8ÁEß›< ëì vmax_u16ÁEƒ¢< ìì vmaxq_u16ÁM¨¨< íì vmax_u32ÁEÍ®< îì vmaxq_u32ÁMò´< ïì
vmaxnm_f16ÁUè»< ðì vmaxnmq_f16Á]ÿÄ< óì
vmaxnm_f32ÁUìÍ< öì vmaxnmq_f32Á]×Ö< ùì vmin_f16ÁEËß< üì vminq_f16ÁM´è< ÿì vmin_f32ÁEóð< ‚í vminq_f32ÁM°ù< …í vmin_s8Á=î= ˆí vminq_s8ÁE‰ˆ= ‰í vmin_s16ÁE©Ž= Ší vminq_s16ÁMÊ”= ‹í vmin_s32ÁEëš= Œí vminq_s32ÁMŒ¡= í vmin_u8Á=¬§= Ží vminq_u8ÁEË­= í vmin_u16ÁEï³= í vminq_u16ÁM”º= ‘í vmin_u32ÁE¹À= ’í vminq_u32ÁMÞÆ= “í
vminnm_f16ÁUÔÍ= ”í vminnmq_f16Á]ëÖ= —í
vminnm_f32ÁUØß= ší vminnmq_f32Á]Ãè= í vmla_f32ÁE«ñ=  í vmlaq_f32ÁMÍ÷= ¡í
vmla_lane_f32Ám¦þ= ¢í vmla_laneq_f32Áuï…> ¤í vmlaq_lane_f32Áu¹> ¦í vmlaq_laneq_f32Á}Ú•> ¨í
vmla_lane_s16Ámù> ªí
vmla_lane_u16Ámþ¥> ¬í vmla_laneq_s16Áuˆ®> ®í vmla_laneq_u16Áu¶> °í vmlaq_lane_s16Áuš¾> ²í vmlaq_lane_u16ÁuÆÈ> ´í vmlaq_laneq_s16Á}÷Ò> ¶í vmlaq_laneq_u16Á}¥Ý> ¸í
vmla_lane_s32ÁmÕç> ºí
vmla_lane_u32Ám…ï> ¼í vmla_laneq_s32Áuºö> ¾í vmla_laneq_u32Áuìý> Àí vmlaq_lane_s32Áu¢…? Âí vmlaq_lane_u32Áuª? Äí vmlaq_laneq_s32Á}·•? Æí vmlaq_laneq_u32Á}Á? Èí
vmla_n_f32ÁU•¥? Êí vmlaq_n_f32Á]¦«? Ëí
vmla_n_s16ÁU¸±? Ìí vmlaq_n_s16Á]·? Íí
vmla_n_u16ÁUν? Îí vmlaq_n_u16Á]ÛÃ? Ïí
vmla_n_s32ÁUêÉ? Ðí vmlaq_n_s32Á]ôÏ? Ñí
vmla_n_u32ÁU€Ö? Òí vmlaq_n_u32Á]Ü? Óí vmla_s8Á=â? Ôí vmlaq_s8ÁEè? Õí vmla_s16ÁE™î? Öí vmlaq_s16ÁM£ô? ×í vmla_s32ÁE­ú? Øí vmlaq_s32ÁM·€@ Ùí vmla_u8Á=¿†@ Úí vmlaq_u8ÁEÆŒ@ Ûí vmla_u16ÁEÓ’@ Üí vmlaq_u16ÁMá˜@ Ýí vmla_u32ÁEïž@ Þí vmlaq_u32ÁMý¤@ ßí vmlal_lane_s16ÁuÞ«@ àí vmlal_laneq_s16Á}ó³@ âí vmlal_lane_s32Áuˆ¼@ äí vmlal_laneq_s32Á}ÈÃ@ æí vmlal_lane_u16ÁuˆË@ èí vmlal_laneq_u16Á}¡Ó@ êí vmlal_lane_u32ÁuºÛ@ ìí vmlal_laneq_u32Á}þâ@ îí vmlal_n_s16Á]‰ê@ ðí vmlal_n_s32Á]¡ð@ ñí vmlal_n_u16Á]¹ö@ òí vmlal_n_u32Á]Ôü@ óí vmlal_s8ÁEÔ‚A ôí vmlal_s16ÁM܈A õí vmlal_s32ÁMèŽA öí vmlal_u8ÁEô”A ÷í vmlal_u16ÁM‚›A øí vmlal_u32ÁM”¡A ùí vmls_f32ÁEº§A úí vmlsq_f32ÁMã­A ûí
vmls_lane_f32Ámº´A üí vmls_laneq_f32Áu¼A þí vmlsq_lane_f32ÁuÉÃA €î vmlsq_laneq_f32Á}èËA ‚î
vmls_lane_s16Ám…ÔA „î
vmls_lane_u16ÁmˆÜA †î vmls_laneq_s16ÁuäA ˆî vmls_laneq_u16Áu•ìA Šî vmlsq_lane_s16ÁužôA Œî vmlsq_lane_u16ÁuÈþA Žî vmlsq_laneq_s16Á}÷ˆB î vmlsq_laneq_u16Á}£“B ’î
vmls_lane_s32ÁmÑB ”î
vmls_lane_u32Ámÿ¤B –î vmls_laneq_s32Áu²¬B ˜î vmls_laneq_u32Áuâ³B šî vmlsq_lane_s32Áu–»B œî vmlsq_lane_u32ÁuœÃB žî vmlsq_laneq_s32Á}§ËB  î vmlsq_laneq_u32Á}¯ÓB ¢î
vmls_n_f32ÁUÛB ¤î vmlsq_n_f32Á]áB ¥î
vmls_n_s16ÁU çB ¦î vmlsq_n_s16Á]¨íB §î
vmls_n_u16ÁU²óB ¨î vmlsq_n_u16Á]½ùB ©î
vmls_n_s32ÁUÊÿB ªî vmlsq_n_s32Á]Ò…C «î
vmls_n_u32ÁUÜ‹C ¬î vmlsq_n_u32Á]ç‘C ­î vmls_s8Á=î—C ®î vmlsq_s8ÁEøC ¯î vmls_s16ÁEˆ¤C °î vmlsq_s16ÁM™ªC ±î vmls_s32ÁEª°C ²î vmlsq_s32ÁM»¶C ³î vmls_u8Á=ʼC ´î vmlsq_u8ÁEØÂC µî vmls_u16ÁEìÈC ¶î vmlsq_u16ÁMÏC ·î vmls_u32ÁE–ÕC ¸î vmlsq_u32ÁM«ÛC ¹î vmlsl_lane_s16ÁuŠâC ºî vmlsl_laneq_s16Á}êC ¼î vmlsl_lane_s32Áu°òC ¾î vmlsl_laneq_s32Á}îùC Àî vmlsl_lane_u16Áu¬D Âî vmlsl_laneq_u16Á}ÉD Äî vmlsl_lane_u32ÁuÚ‘D Æî vmlsl_laneq_u32Á}œ™D Èî vmlsl_n_s16Á]¥ D Êî vmlsl_n_s32Á]»¦D Ëî vmlsl_n_u16Á]ѬD Ìî vmlsl_n_u32Á]ê²D Íî vmlsl_s8ÁEï¸D Îî vmlsl_s16ÁMü¾D Ïî vmlsl_s32ÁMÅD Ðî vmlsl_u8ÁEžËD Ñî vmlsl_u16ÁM±ÑD Òî vmlsl_u32ÁMÈ×D Óî
vmmlaq_s32ÁUêÝD Ôî
vmmlaq_u32ÁUïæD ×î
vmov_n_f16ÁU¶ïD Úî vmovq_n_f16Á]ÖôD Ûî
vmov_n_f32ÁU¼úD Üî
vmov_n_p16ÁU¨€E Ýî vmov_n_p8ÁM‘†E Þî
vmov_n_s16ÁUø‹E ßî
vmov_n_s32ÁUâ‘E àî
vmov_n_s64ÁUÊ—E áî vmov_n_s8ÁM²E âî
vmov_n_u16ÁU˜£E ãî
vmov_n_u32ÁUƒ©E äî
vmov_n_u64ÁUì®E åî vmov_n_u8ÁMÕ´E æî vmovq_n_f32Á]½ºE çî vmovq_n_p16Á]¬ÀE èî
vmovq_n_p8ÁU˜ÆE éî vmovq_n_s16Á]ƒÌE êî vmovq_n_s32Á]ðÑE ëî vmovq_n_s64Á]Ú×E ìî
vmovq_n_s8ÁUÅÝE íî vmovq_n_u16Á]¯ãE îî vmovq_n_u32Á]éE ïî vmovq_n_u64Á]ˆïE ðî
vmovq_n_u8ÁUôôE ñî vmovl_s16ÁM¿úE òî vmovl_s32ÁM‘€F óî vmovl_s8ÁEâ…F ôî vmovl_u16ÁM²‹F õî vmovl_u32ÁM†‘F öî vmovl_u8ÁEÙ–F ÷î vmovn_s16ÁM¯œF øî vmovn_s32ÁM„¢F ùî vmovn_s64ÁMÚ§F úî vmovn_u16ÁM°­F ûî vmovn_u32ÁM‡³F üî vmovn_u64ÁM߸F ýî vmul_f16ÁEÚ¾F þî vmulq_f16ÁMéÄF ÿî vmul_f32ÁEÌÊF €ï vmulq_f32ÁM¯ÐF ï
vmul_lane_f16ÁmóÖF ‚ï vmulq_lane_f16ÁuëÞF „ï
vmul_lane_f32ÁmêèF †ï vmul_laneq_f32ÁuüïF ˆï vmulq_lane_f32Áu÷F Šï vmulq_laneq_f32Á}ìþF Œï
vmul_lane_s16Ám¸†G Žï vmulq_lane_s16ÁuýG ï
vmul_lane_s32Ámæ—G ’ï vmulq_lane_s32ÁuâžG ”ï
vmul_lane_u16Ám§¦G –ï vmulq_lane_u16Áuï­G ˜ï
vmul_lane_u32ÁmÛ·G šï vmulq_lane_u32ÁuÚ¾G œï vmul_laneq_s16Áu£ÆG žï vmulq_laneq_s16Á}êÍG  ï vmul_laneq_s32ÁuÕ×G ¢ï vmulq_laneq_s32Á}ÓÞG ¤ï vmul_laneq_u16ÁušæG ¦ï vmulq_laneq_u16Á}äíG ¨ï vmul_laneq_u32ÁuÒ÷G ªï vmulq_laneq_u32Á}ÓþG ¬ï
vmul_n_f16ÁU„…H ®ï vmulq_n_f16Á]‰ŠH ¯ï
vmul_n_f32ÁU€H °ï vmulq_n_f32Á]ö•H ±ï
vmul_n_s16ÁUì›H ²ï vmulq_n_s16Á]Ý¡H ³ï
vmul_n_s32ÁUϧH ´ï vmulq_n_s32Á]À­H µï
vmul_n_u16ÁU²³H ¶ï vmulq_n_u16Á]¥¹H ·ï
vmul_n_u32ÁU™¿H ¸ï vmulq_n_u32Á]ŒÅH ¹ï vmul_p8Á=øÊH ºï vmulq_p8ÁE¦ÓH ½ï vmul_s16ÁEÙÛH Àï vmulq_s16ÁMµáH Áï vmul_u16ÁE‘çH Âï vmulq_u16ÁMðìH Ãï vmul_s32ÁEÏòH Äï vmulq_s32ÁM«øH Åï vmul_u32ÁE‡þH Æï vmulq_u32ÁMæƒI Çï vmul_s8Á=ÉI Èï vmulq_s8ÁE™I Éï vmul_u8Á=ò”I Êï vmulq_u8ÁEËšI Ëï vmull_lane_s16Áuø I Ìï vmull_laneq_s16Á}Ù¨I Îï vmull_lane_s32Áuº°I Ðï vmull_laneq_s32Á}Ò·I Òï vmull_lane_u16Áuê¾I Ôï vmull_laneq_u16Á}ÎÆI Öï vmull_lane_u32Áu²ÎI Øï vmull_laneq_u32Á}ÍÕI Úï vmull_n_s16Á]±ÜI Üï vmull_n_s32Á]£âI Ýï vmull_n_u16Á]•èI Þï vmull_n_u32Á]‰îI ßï vmull_p8ÁE÷óI àï vmull_s16ÁM¸üI ãï vmull_s32ÁMº‚J äï vmull_s8ÁEºˆJ åï vmull_u8ÁE¹ŽJ æï vmull_u16ÁM½”J çï vmull_u32ÁMÄšJ èï vmvn_p8Á=½ J éï vmvn_s16ÁE±¦J êï vmvn_s32ÁE¥¬J ëï vmvn_s8Á=˜²J ìï vmvn_u16ÁEˆ¸J íï vmvn_u32ÁEƒ¾J îï vmvn_u8Á=„ÄJ ïï vmvnq_p8ÁEøÉJ ðï vmvnq_s16ÁMñÏJ ñï vmvnq_s32ÁMçÕJ òï vmvnq_s8ÁEÜÛJ óï vmvnq_u16ÁMÑáJ ôï vmvnq_u32ÁMÎçJ õï vmvnq_u8ÁEÑíJ öï vneg_f16ÁEïóJ ÷ï vnegq_f16ÁMéùJ øï vneg_f32ÁE·ÿJ ùï vnegq_f32ÁM……K úï vneg_s8Á=ЊK ûï vnegq_s8ÁE”K üï vneg_s16ÁEÜ•K ýï vnegq_s16ÁM¥›K þï vneg_s32ÁEî K ÿï vnegq_s32ÁM·¦K €ð vorn_s16ÁE“¬K ð vorn_s32ÁE­²K ‚ð vorn_s64ÁEǸK ƒð vorn_s8Á=à¾K „ð vornq_s16ÁMöÄK …ð vornq_s32ÁM’ËK †ð vornq_s64ÁM®ÑK ‡ð vornq_s8ÁEÉ×K ˆð vorn_u16ÁEãÝK ‰ð vorn_u32ÁE‹äK Šð vorn_u64ÁE³êK ‹ð vorn_u8Á=ÚðK Œð vornq_u16ÁMþöK ð vornq_u32ÁM¨ýK Žð vornq_u64ÁMÒƒL ð vornq_u8ÁEû‰L ð vorr_s8Á=«L ‘ð vorrq_s8ÁE›–L ’ð vorr_s16ÁEœL “ð vorrq_s16ÁM„¢L ”ð vorr_s32ÁEù§L •ð vorrq_s32ÁMî­L –ð vorr_s64ÁEã³L —ð vorrq_s64ÁMعL ˜ð vorr_u8Á=Ì¿L ™ð vorrq_u8ÁE¿ÅL šð vorr_u16ÁE¶ËL ›ð vorrq_u16ÁM®ÑL œð vorr_u32ÁE¦×L ð vorrq_u32ÁMžÝL žð vorr_u64ÁE–ãL Ÿð vorrq_u64ÁMŽéL  ð vpadal_s8ÁM‘ïL ¡ð
vpadalq_s8ÁUÛöL ¢ð
vpadal_s16ÁUªþL £ð vpadalq_s16Á]ú…M ¤ð
vpadal_s32ÁUÌM ¥ð vpadalq_s32Á]œ•M ¦ð vpadal_u8ÁMîœM §ð
vpadalq_u8ÁU¾¤M ¨ð
vpadal_u16ÁU“¬M ©ð vpadalq_u16Á]é³M ªð
vpadal_u32ÁUÁ»M «ð vpadalq_u32Á]—ÃM ¬ð vpadd_f16ÁMƒËM ­ð vpadd_f32ÁMÑÓM °ð vpadd_s8ÁEÜM ³ð vpadd_s16ÁM¶äM ¶ð vpadd_s32ÁMèìM ¹ð vpadd_u8ÁEºõM ¼ð vpadd_u16ÁMþƒN ½ð vpadd_u32ÁM¬’N ¾ð vpaddl_s8ÁMÊ N ¿ð
vpaddlq_s8ÁU©N Âð
vpaddl_s16ÁUرN Åð vpaddlq_s16Á]¤ºN Èð
vpaddl_s32ÁUòÂN Ëð vpaddlq_s32Á]¾ËN Îð vpaddl_u8ÁMŒÔN Ñð
vpaddlq_u8ÁUÕÜN Ôð
vpaddl_u16ÁU¦åN ×ð vpaddlq_u16Á]øíN Úð
vpaddl_u32ÁUÌöN Ýð vpaddlq_u32Á]žÿN àð vpmax_f32ÁMà‡O ãð vpmax_s8ÁE´O æð vpmax_s16ÁMò˜O éð vpmax_s32ÁM»¡O ìð vpmax_u8ÁEƒªO ïð vpmax_u16ÁMDzO òð vpmax_u32ÁM–»O õð vpmin_f32ÁMåÃO øð vpmin_s8ÁE¹ÌO ûð vpmin_s16ÁM÷ÔO þð vpmin_s32ÁMÀÝO ñ vpmin_u8ÁEˆæO „ñ vpmin_u16ÁMÌîO ‡ñ vpmin_u32ÁM›÷O Šñ vqabs_s8ÁEíÿO ñ vqabsq_s8ÁM‘ˆP ñ vqabs_s16ÁM¿P “ñ
vqabsq_s16ÁUî˜P –ñ vqabs_s32ÁMŸ¡P ™ñ
vqabsq_s32ÁUΩP œñ vqadd_s8ÁEë±P Ÿñ vqaddq_s8ÁM×·P  ñ vqadd_s16ÁMȽP ¡ñ
vqaddq_s16ÁUºÃP ¢ñ vqadd_s32ÁM¬ÉP £ñ
vqaddq_s32ÁUžÏP ¤ñ vqadd_s64ÁMÕP ¥ñ
vqaddq_s64ÁU‚ÛP ¦ñ vqadd_u8ÁEòàP §ñ vqaddq_u8ÁMáæP ¨ñ vqadd_u16ÁMÕìP ©ñ
vqaddq_u16ÁUÊòP ªñ vqadd_u32ÁM¿øP «ñ
vqaddq_u32ÁU´þP ¬ñ vqadd_u64ÁM©„Q ­ñ
vqaddq_u64ÁUžŠQ ®ñ vqdmlal_lane_s16Á…ýQ ¯ñ vqdmlal_lane_s32Á…¥˜Q ±ñ
vqdmlal_n_s16ÁmšŸQ ³ñ
vqdmlal_n_s32ÁmÌ¥Q ´ñ vqdmlal_s16Á]å«Q µñ vqdmlal_s32Á]€²Q ¶ñ vqdmlsl_lane_s16Á…å¸Q ·ñ vqdmlsl_lane_s32Á…‹ÀQ ¹ñ
vqdmlsl_n_s16ÁmþÆQ »ñ
vqdmlsl_n_s32Ám®ÍQ ¼ñ vqdmlsl_s16Á]ÌÓQ ½ñ vqdmlsl_s32Á]ìÙQ ¾ñ vqdmulh_laneq_s16ÁÉàQ ¿ñ vqdmulhq_laneq_s16Á•ûçQ Áñ vqdmulh_laneq_s32Á¯ïQ Ãñ vqdmulhq_laneq_s32Á•áöQ Åñ
vqdmulh_n_s16ÁmÝýQ Çñ vqdmulhq_n_s16Áuˆ„R Èñ
vqdmulh_n_s32ÁmµŠR Éñ vqdmulhq_n_s32ÁuàR Êñ vqdmulh_s16Á]Ž—R Ëñ vqdmulhq_s16ÁeýŸR Îñ vqdmulh_s32Á]î¨R Ññ vqdmulhq_s32ÁeݱR Ôñ vqdmull_lane_s16Á…þºR ×ñ vqdmull_lane_s32Á…ÄÂR Ùñ
vqdmull_n_s16ÁmÙÉR Ûñ
vqdmull_n_s32ÁméÏR Üñ vqdmull_s16Á]ëÕR Ýñ vqdmull_s32Á]ÊÞR àñ
vqmovn_s16ÁUçR ãñ
vqmovn_s32ÁUÈïR æñ
vqmovn_s64ÁU÷÷R éñ
vqmovn_u16ÁU¨€S ìñ
vqmovn_u32ÁUÙˆS ïñ
vqmovn_u64ÁUŽ‘S òñ vqmovun_s16Á]Í™S õñ vqmovun_s32Á]‹¢S øñ vqmovun_s64Á]ͪS ûñ vqneg_s8ÁEý²S þñ vqnegq_s8ÁM™»S ò vqneg_s16ÁM¿ÃS „ò
vqnegq_s16ÁUæËS ‡ò vqneg_s32ÁMÔS Šò
vqnegq_s32ÁU¶ÜS ò vqrdmulh_lane_s16ÁÀåS ò vqrdmulh_lane_s32ÁÓíS ’ò vqrdmulh_laneq_s16Á•ÁõS ”ò vqrdmulh_laneq_s32Á•ÖýS –ò vqrdmulhq_lane_s16Á•Å…T ˜ò vqrdmulhq_lane_s32Á•¿T šò vqrdmulhq_laneq_s16ÁÖ—T œò vqrdmulhq_laneq_s32ÁÒ¡T žò vqrdmulh_n_s16Áu±©T  ò vqrdmulhq_n_s16Á}ЯT ¡ò vqrdmulh_n_s32ÁuñµT ¢ò vqrdmulhq_n_s32Á}¼T £ò vqrdmulh_s16Áe²ÂT ¤ò
vqrdmulhq_s16Ám²ËT §ò vqrdmulh_s32Áe´ÔT ªò
vqrdmulhq_s32Ám´ÝT ­ò vqrshl_s8ÁM”æT °ò
vqrshlq_s8ÁUàîT ³ò
vqrshl_s16ÁU·÷T ¶ò vqrshlq_s16Á]€U ¹ò
vqrshl_s32ÁUéˆU ¼ò vqrshlq_s32Á]Á‘U ¿ò
vqrshl_s64ÁU›šU Âò vqrshlq_s64Á]ó¢U Åò vqrshl_u8ÁMÕ«U Èò
vqrshlq_u8ÁU®´U Ëò
vqrshl_u16ÁU’½U Îò vqrshlq_u16Á]÷ÅU Ñò
vqrshl_u32ÁUÞÎU Ôò vqrshlq_u32Á]Ã×U ×ò
vqrshl_u64ÁUªàU Úò vqrshlq_u64Á]éU Ýò
vqrshrn_n_s16ÁmïV àò
vqrshrn_n_s32Ám†ˆV äò
vqrshrn_n_s64Ám¡ŽV èò
vqrshrn_n_u16ÁmŒ§V ìò
vqrshrn_n_u32Ám°­V ðò
vqrshrn_n_u64ÁmسV ôò vqrshrun_n_s16ÁuÈÌV øò vqrshrun_n_s32ÁuðÒV üò vqrshrun_n_s64ÁuœÙV €ó
vqshl_n_s8ÁUóáV „ó vqshlq_n_s8Á]»èV †ó vqshl_n_s16Á]ˆïV ˆó vqshlq_n_s16ÁeÖõV Šó vqshl_n_s32Á]¦üV Œó vqshlq_n_s32Áeô‚W Žó vqshl_n_s64Á]ĉW ó vqshlq_n_s64ÁeW ’ó
vqshl_n_u8ÁUã–W ”ó vqshlq_n_u8Á]¯W –ó vqshl_n_u16Á]€¤W ˜ó vqshlq_n_u16ÁeÒªW šó vqshl_n_u32Á]¦±W œó vqshlq_n_u32Áeø·W žó vqshl_n_u64Á]̾W  ó vqshlq_n_u64ÁežÅW ¢ó vqshl_s8ÁE½ËW ¤ó vqshlq_s8ÁMøÓW §ó vqshl_s16ÁM¾ÜW ªó
vqshlq_s16ÁU…åW ­ó vqshl_s32ÁMÎíW °ó
vqshlq_s32ÁU•öW ³ó vqshl_s64ÁMÞþW ¶ó
vqshlq_s64ÁU¥‡X ¹ó vqshl_u8ÁEïX ¼ó vqshlq_u8ÁM°˜X ¿ó vqshl_u16ÁMü X Âó
vqshlq_u16ÁUÉ©X Åó vqshl_u32ÁM˜²X Èó
vqshlq_u32ÁUåºX Ëó vqshl_u64ÁM´ÃX Îó
vqshlq_u64ÁUÌX Ñó vqshlu_n_s8Á]†‚Y Ôó vqshluq_n_s8Áe¯ˆY Úó vqshlu_n_s16ÁeãŽY àó
vqshluq_n_s16Ám˜•Y æó vqshlu_n_s32ÁeÏ›Y ìó
vqshluq_n_s32Ámý¡Y òó vqshlu_n_s64Áe­¨Y øó
vqshluq_n_s64Ámß®Y ýó vqshrn_n_s16ÁeþÆY ƒô vqshrn_n_s32Áe‡ÍY ‡ô vqshrn_n_s64Áe”ÓY ‹ô vqshrn_n_u16Áe«ëY ô vqshrn_n_u32ÁeºñY “ô vqshrn_n_u64ÁeÍ÷Y —ô
vqshrun_n_s16Ám…Z ›ô
vqshrun_n_s32ÁmŸ–Z Ÿô
vqshrun_n_s64Ám½œZ £ô vqsub_s8ÁEÚ¤Z §ô vqsubq_s8ÁM˪Z ¨ô vqsub_s16ÁMÁ°Z ©ô
vqsubq_s16ÁU¸¶Z ªô vqsub_s32ÁM¯¼Z «ô
vqsubq_s32ÁU¦ÂZ ¬ô vqsub_s64ÁMÈZ ­ô
vqsubq_s64ÁU”ÎZ ®ô vqsub_u8ÁE‰ÔZ ¯ô vqsubq_u8ÁMýÙZ °ô vqsub_u16ÁMößZ ±ô
vqsubq_u16ÁUðåZ ²ô vqsub_u32ÁMêëZ ³ô
vqsubq_u32ÁUäñZ ´ô vqsub_u64ÁMÞ÷Z µô
vqsubq_u64ÁUØýZ ¶ô vraddhn_high_s16Á…ùƒ[ ·ô vraddhn_high_s32Á…ûŠ[ ¸ô vraddhn_high_s64Á…à‘[ ¹ô vraddhn_high_u16Á…¹˜[ ºô vraddhn_high_u32Á…ûŸ[ »ô vraddhn_high_u64Á…¡§[ ¼ô vraddhn_s16Á]©®[ ½ô vraddhn_s32Á]ƒ·[ Àô vraddhn_s64Á]á¿[ Ãô vraddhn_u16Á]àÈ[ Æô vraddhn_u32Á]û×[ Çô vraddhn_u64Á]õæ[ Èô
vrecpe_f16ÁUÑõ[ Éô vrecpeq_f16Á]ªþ[ Ìô
vrecpe_f32ÁUÙ†\ Ïô vrecpeq_f32Á]†\ Òô
vrecpe_u32ÁU½—\ Õô vrecpeq_u32Á]îŸ\ Øô
vrecps_f16ÁUϨ\ Ûô vrecpsq_f16Á]Õ±\ Þô
vrecps_f32ÁU±º\ áô vrecpsq_f32Á]‹Ã\ äô vreinterpret_f32_f16Á¥¶Ì\ çô vreinterpret_s8_f16ÁÓÚ\ èô vreinterpret_s16_f16Á¥÷è\ éô vreinterpret_s32_f16Á¥•÷\ êô vreinterpret_s64_f16Á¥­…] ëô vreinterpret_u8_f16Áî’] ìô vreinterpret_u16_f16Á¥•¡] íô vreinterpret_u32_f16Á¥¶¯] îô vreinterpret_u64_f16Á¥Ñ½] ïô vreinterpret_p8_f16Á”Ë] ðô vreinterpret_p16_f16Á¥»Ù] ñô vreinterpretq_f32_f16Á­Ýç] òô vreinterpretq_s8_f16Á¥ö] óô vreinterpretq_s16_f16Á­“…^ ôô vreinterpretq_s32_f16Á­Í“^ õô vreinterpretq_s64_f16Á­û¡^ öô vreinterpretq_u8_f16Á¥¢°^ ÷ô vreinterpretq_u16_f16Á­¨¿^ øô vreinterpretq_u32_f16Á­åÍ^ ùô vreinterpretq_u64_f16Á­–Ü^ úô vreinterpretq_p8_f16Á¥Àê^ ûô vreinterpretq_p16_f16Á­Æù^ üô vreinterpret_f16_f32Á¥‚ˆ_ ýô vreinterpretq_f16_f32Á­¡–_ þô vreinterpret_f16_s8ÁÓ¤_ ÿô vreinterpretq_f16_s8Á¥÷²_ €õ vreinterpret_f16_s16Á¥ÓÁ_ õ vreinterpretq_f16_s16Á­òÏ_ ‚õ vreinterpret_f16_s32Á¥«Þ_ ƒõ vreinterpretq_f16_s32Á­Äì_ „õ vreinterpret_f16_s64Á¥ñú_ …õ vreinterpretq_f16_s64Á­Ëˆ` †õ vreinterpret_f16_u8Áñ–` ‡õ vreinterpretq_f16_u8Á¥˜¥` ˆõ vreinterpret_f16_u16Á¥÷³` ‰õ vreinterpretq_f16_u16Á­™Â` Šõ vreinterpret_f16_u32Á¥ÕÐ` ‹õ vreinterpretq_f16_u32Á­ñÞ` Œõ vreinterpret_f16_u64Á¥¡í` õ vreinterpretq_f16_u64Á­ýú` Žõ vreinterpret_f16_p8Á¦‰a õ vreinterpretq_f16_p8Á¥Í—a õ vreinterpret_f16_p16Á¥¬¦a ‘õ vreinterpretq_f16_p16Á­Î´a ’õ vreinterpretq_f16_p128ÁµŒÃa “õ vreinterpret_p64_f16Á¥íÐa ”õ vreinterpretq_p128_f16Áµ³Þa •õ vreinterpretq_p64_f16Á­þëa –õ vreinterpret_f16_p64Á¥¨úa —õ vreinterpretq_f16_p64Á­„ˆb ˜õ vreinterpretq_f32_p128Áµ‰–b ™õ vreinterpret_s8_f32Á£b šõ vreinterpret_s16_f32Á¥ß°b ›õ vreinterpret_s32_f32Á¥©¾b œõ vreinterpret_s64_f32Á¥íËb õ vreinterpret_u8_f32ÁÚØb žõ vreinterpret_u16_f32Á¥­æb Ÿõ vreinterpret_u32_f32Á¥úób  õ vreinterpret_u64_f32Á¥Ác ¡õ vreinterpret_p8_f32Á°Žc ¢õ vreinterpret_p16_f32Á¥ƒœc £õ vreinterpretq_p128_f32ÁµÒ©c ¤õ vreinterpretq_s8_f32Á¥Â¶c ¥õ vreinterpretq_s16_f32Á­ëÄc ¦õ vreinterpretq_s32_f32Á­ËÒc §õ vreinterpretq_s64_f32Á­Ÿàc ¨õ vreinterpretq_u8_f32Á¥ìíc ©õ vreinterpretq_u16_f32Á­˜üc ªõ vreinterpretq_u32_f32Á­û‰d «õ vreinterpretq_u64_f32Á­Ò—d ¬õ vreinterpretq_p8_f32Á¥¢¥d ­õ vreinterpretq_p16_f32Á­Î³d ®õ vreinterpret_f32_s8Á¯Ád ¯õ vreinterpret_s16_s8ÁþÎd °õ vreinterpret_s32_s8ÁÍÜd ±õ vreinterpret_s64_s8Á–êd ²õ vreinterpret_u8_s8Á•ˆ÷d ³õ vreinterpret_u16_s8Áà„e ´õ vreinterpret_u32_s8Á²’e µõ vreinterpret_u64_s8ÁþŸe ¶õ vreinterpret_p8_s8Á•ò¬e ·õ vreinterpret_p16_s8Áʺe ¸õ vreinterpretq_f32_s8Á¥Èe ¹õ vreinterpretq_s16_s8Á¥ŸÖe ºõ vreinterpretq_s32_s8Á¥§äe »õ vreinterpretq_s64_s8Á¥£òe ¼õ vreinterpretq_u8_s8Á˜€f ½õ vreinterpretq_u16_s8Á¥ìŽf ¾õ vreinterpretq_u32_s8Á¥÷œf ¿õ vreinterpretq_u64_s8Á¥öªf Àõ vreinterpretq_p8_s8Áî¸f Áõ vreinterpretq_p16_s8Á¥ÂÇf Âõ vreinterpret_f32_s16Á¥ÍÕf Ãõ vreinterpret_s8_s16Á–ãf Äõ vreinterpret_s32_s16Á¥æðf Åõ vreinterpret_s64_s16Á¥ªþf Æ
vrev16q_p8ÁUÀÄ °÷
vrev16q_s8ÁUõÊ ±÷
vrev16q_u8ÁU¨Ñ ²÷
vrev32_p16ÁUÞ× ³÷ vrev32_p8ÁMèÝ ´÷
vrev32_s16ÁUýã µ÷ vrev32_s8ÁM…ê ¶÷
vrev32_u16ÁU˜ð ·÷ vrev32_u8ÁM¢ö ¸÷ vrev32q_p16Á]¸ü ¹÷
vrev32q_p8ÁUЂ€ º÷ vrev32q_s16Á]‡‰€ »÷
vrev32q_s8ÁU ¼÷ vrev32q_u16Á]Ò•€ ½÷
vrev32q_u8ÁUꛀ ¾÷
vrev64_f32ÁU ¢€ ¿÷
vrev64_p16ÁU¨¨€ À÷ vrev64_p8ÁM²®€ Á÷
vrev64_s16ÁUÇ´€ Â÷
vrev64_s32ÁUѺ€ Ã÷ vrev64_s8ÁMÓÀ€ Ä÷
vrev64_u16ÁUæÆ€ Å÷
vrev64_u32ÁUòÌ€ Æ÷ vrev64_u8ÁMöÒ€ Ç÷ vrev64q_f32Á]ŒÙ€ È÷ vrev64q_p16Á]œß€ É÷
vrev64q_p8ÁU´å€ Ê÷ vrev64q_s16Á]ëë€ Ë÷ vrev64q_s32Á]ƒò€ Ì÷
vrev64q_s8ÁUø€ Í÷ vrev64q_u16Á]Âþ€ Î÷ vrev64q_u32Á]Ü„ Ï÷
vrev64q_u8ÁUèŠ Ð÷
vrev64_f16ÁUÀ‘ Ñ÷ vrev64q_f16Á]ñ— Ò÷ vrhadd_s8ÁMõ Ó÷
vrhaddq_s8ÁU³¦ Ö÷
vrhadd_s16ÁUý® Ù÷ vrhaddq_s16Á]È· Ü÷
vrhadd_s32ÁU•À ß÷ vrhaddq_s32Á]àÈ â÷ vrhadd_u8ÁM«Ñ å÷
vrhaddq_u8ÁUïÙ è÷
vrhadd_u16ÁU¿â ë÷ vrhaddq_u16Á]ë î÷
vrhadd_u32ÁUãó ñ÷ vrhaddq_u32Á]´ü ô÷ vrndn_f16ÁMß…‚ ÷÷
vrndnq_f16ÁUŸŽ‚ ú÷ vrndn_f32ÁMµ–‚ ý÷
vrndnq_f32ÁUÉž‚ €ø vrshl_s8ÁE¯¦‚ ƒø vrshlq_s8ÁM讂 †ø vrshl_s16ÁM¬·‚ ‰ø
vrshlq_s16ÁUñ¿‚ Œø vrshl_s32ÁM¸È‚ ø
vrshlq_s32ÁUýЂ ’ø vrshl_s64ÁMÄÙ‚ •ø
vrshlq_s64ÁU‰â‚ ˜ø vrshl_u8ÁEÑê‚ ›ø vrshlq_u8ÁMó‚ žø vrshl_u16ÁMÚû‚ ¡ø
vrshlq_u16ÁU¥„ƒ ¤ø vrshl_u32ÁMòŒƒ §ø
vrshlq_u32ÁU½•ƒ ªø vrshl_u64ÁMŠžƒ ­ø
vrshlq_u64ÁUÕ¦ƒ °ø
vrshr_n_s8ÁUÒ¯ƒ ³ø vrshrq_n_s8Á]œ¶ƒ µø vrshr_n_s16Á]뼃 ·ø vrshrq_n_s16Áe¼Ãƒ ¹ø vrshr_n_s32Á]ʃ »ø vrshrq_n_s32ÁeàЃ ½ø vrshr_n_s64Á]³×ƒ ¿ø vrshrq_n_s64Áe„Þƒ Áø
vrshr_n_u8ÁUØäƒ Ãø vrshrq_n_u8Á]¦ëƒ Åø vrshr_n_u16Á]ùñƒ Çø vrshrq_n_u16ÁeÎøƒ Éø vrshr_n_u32Á]¥ÿƒ Ëø vrshrq_n_u32Áeú…„ Íø vrshr_n_u64Á]ÑŒ„ Ïø vrshrq_n_u64Áe¦“„ Ñø vrshrn_n_s16Áeü¨„ Óø vrshrn_n_s32Áeú®„ ×ø vrshrn_n_s64Áeü´„ Ûø vrshrn_n_u16Áeʽ„ ßø vrshrn_n_u32Áe±Ä„ áø vrshrn_n_u64ÁešË„ ãø vrsqrte_f16Á]†Ò„ åø vrsqrteq_f16ÁeóÚ„ èø vrsqrte_f32Á]¶ã„ ëø vrsqrteq_f32Áe÷ë„ îø vrsqrte_u32Á]Âô„ ñø vrsqrteq_u32Áe‡ý„ ôø vrsqrts_f16Á]ü…… ÷ø vrsqrtsq_f16Áe úø vrsqrts_f32Á]†˜… ýø vrsqrtsq_f32Áeô … €ù
vrsra_n_s8ÁUª… ƒù vrsraq_n_s8Á]€±… …ù vrsra_n_s16Á]ö·… ‡ù vrsraq_n_s16Áeî¾… ‰ù vrsra_n_s32Á]çÅ… ‹ù vrsraq_n_s32ÁeßÌ… ù vrsra_n_s64Á]ØÓ… ù vrsraq_n_s64ÁeÐÚ… ‘ù
vrsra_n_u8ÁUÊá… “ù vrsraq_n_u8Á]Àè… •ù vrsra_n_u16Á]»ï… —ù vrsraq_n_u16Áe¸ö… ™ù vrsra_n_u32Á]¶ý… ›ù vrsraq_n_u32Áe³„† ù vrsra_n_u64Á]±‹† Ÿù vrsraq_n_u64Áe®’† ¡ù vrsubhn_s16Á]ú˜† £ù vrsubhn_s32Á]Ò¡† ¦ù vrsubhn_s64Á]®ª† ©ù vrsubhn_u16Á]«³† ¬ù vrsubhn_u32Á]† ­ù vrsubhn_u64Á]¸Ñ† ®ù
vset_lane_f16ÁmÅ߆ ¯ù vsetq_lane_f16ÁuÙå† ±ù
vset_lane_f32ÁmÞì† ³ù vsetq_lane_f32Áuãó† µù vset_lane_s8Áeçú† ·ù
vsetq_lane_s8Ámã ¹ù
vset_lane_s16Ám∇ »ù vsetq_lane_s16Áuã ½ù
vset_lane_s32Ámä–‡ ¿ù vsetq_lane_s32Áuå Áù vsetq_lane_s64Áu礇 Ãù vset_lane_u8Áe竇 Åù
vsetq_lane_u8Ám岇 Çù