cjson
fuzzing
inputs
test1 test10 test11 test2 test3 test3.bu test3.uf test3.uu test4 test5 test6 test7 test8 test9library_config
cJSONConfig.cmake.in cJSONConfigVersion.cmake.in libcjson.pc.in libcjson_utils.pc.in uninstall.cmaketests
inputs
test1 test1.expected test10 test10.expected test11 test11.expected test2 test2.expected test3 test3.expected test4 test4.expected test5 test5.expected test6 test7 test7.expected test8 test8.expected test9 test9.expectedjson-patch-tests
.editorconfig .gitignore .npmignore README.md cjson-utils-tests.json package.json spec_tests.json tests.jsonunity
auto
colour_prompt.rb colour_reporter.rb generate_config.yml generate_module.rb generate_test_runner.rb parse_output.rb stylize_as_junit.rb test_file_filter.rb type_sanitizer.rb unity_test_summary.py unity_test_summary.rb unity_to_junit.pydocs
ThrowTheSwitchCodingStandard.md UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf UnityAssertionsReference.md UnityConfigurationGuide.md UnityGettingStartedGuide.md UnityHelperScriptsGuide.md license.txtexamples
unity_config.hcurl
.github
scripts
cleancmd.pl cmp-config.pl cmp-pkg-config.sh codespell-ignore.words codespell.sh distfiles.sh pyspelling.words pyspelling.yaml randcurl.pl requirements-docs.txt requirements-proselint.txt requirements.txt shellcheck-ci.sh shellcheck.sh spellcheck.curl trimmarkdownheader.pl typos.sh typos.toml verify-examples.pl verify-synopsis.pl yamlcheck.sh yamlcheck.yamlworkflows
appveyor-status.yml checkdocs.yml checksrc.yml checkurls.yml codeql.yml configure-vs-cmake.yml curl-for-win.yml distcheck.yml fuzz.yml http3-linux.yml label.yml linux-old.yml linux.yml macos.yml non-native.yml windows.ymlCMake
CurlSymbolHiding.cmake CurlTests.c FindBrotli.cmake FindCares.cmake FindGSS.cmake FindGnuTLS.cmake FindLDAP.cmake FindLibbacktrace.cmake FindLibgsasl.cmake FindLibidn2.cmake FindLibpsl.cmake FindLibssh.cmake FindLibssh2.cmake FindLibuv.cmake FindMbedTLS.cmake FindNGHTTP2.cmake FindNGHTTP3.cmake FindNGTCP2.cmake FindNettle.cmake FindQuiche.cmake FindRustls.cmake FindWolfSSL.cmake FindZstd.cmake Macros.cmake OtherTests.cmake PickyWarnings.cmake Utilities.cmake cmake_uninstall.in.cmake curl-config.in.cmake unix-cache.cmake win32-cache.cmakedocs
cmdline-opts
.gitignore CMakeLists.txt MANPAGE.md Makefile.am Makefile.inc _AUTHORS.md _BUGS.md _DESCRIPTION.md _ENVIRONMENT.md _EXITCODES.md _FILES.md _GLOBBING.md _NAME.md _OPTIONS.md _OUTPUT.md _PROGRESS.md _PROTOCOLS.md _PROXYPREFIX.md _SEEALSO.md _SYNOPSIS.md _URL.md _VARIABLES.md _VERSION.md _WWW.md abstract-unix-socket.md alt-svc.md anyauth.md append.md aws-sigv4.md basic.md ca-native.md cacert.md capath.md cert-status.md cert-type.md cert.md ciphers.md compressed-ssh.md compressed.md config.md connect-timeout.md connect-to.md continue-at.md cookie-jar.md cookie.md create-dirs.md create-file-mode.md crlf.md crlfile.md curves.md data-ascii.md data-binary.md data-raw.md data-urlencode.md data.md delegation.md digest.md disable-eprt.md disable-epsv.md disable.md disallow-username-in-url.md dns-interface.md dns-ipv4-addr.md dns-ipv6-addr.md dns-servers.md doh-cert-status.md doh-insecure.md doh-url.md dump-ca-embed.md dump-header.md ech.md egd-file.md engine.md etag-compare.md etag-save.md expect100-timeout.md fail-early.md fail-with-body.md fail.md false-start.md follow.md form-escape.md form-string.md form.md ftp-account.md ftp-alternative-to-user.md ftp-create-dirs.md ftp-method.md ftp-pasv.md ftp-port.md ftp-pret.md ftp-skip-pasv-ip.md ftp-ssl-ccc-mode.md ftp-ssl-ccc.md ftp-ssl-control.md get.md globoff.md happy-eyeballs-timeout-ms.md haproxy-clientip.md haproxy-protocol.md head.md header.md help.md hostpubmd5.md hostpubsha256.md hsts.md http0.9.md http1.0.md http1.1.md http2-prior-knowledge.md http2.md http3-only.md http3.md ignore-content-length.md insecure.md interface.md ip-tos.md ipfs-gateway.md ipv4.md ipv6.md json.md junk-session-cookies.md keepalive-cnt.md keepalive-time.md key-type.md key.md knownhosts.md krb.md libcurl.md limit-rate.md list-only.md local-port.md location-trusted.md location.md login-options.md mail-auth.md mail-from.md mail-rcpt-allowfails.md mail-rcpt.md mainpage.idx manual.md max-filesize.md max-redirs.md max-time.md metalink.md mptcp.md negotiate.md netrc-file.md netrc-optional.md netrc.md next.md no-alpn.md no-buffer.md no-clobber.md no-keepalive.md no-npn.md no-progress-meter.md no-sessionid.md noproxy.md ntlm-wb.md ntlm.md oauth2-bearer.md out-null.md output-dir.md output.md parallel-immediate.md parallel-max-host.md parallel-max.md parallel.md pass.md path-as-is.md pinnedpubkey.md post301.md post302.md post303.md preproxy.md progress-bar.md proto-default.md proto-redir.md proto.md proxy-anyauth.md proxy-basic.md proxy-ca-native.md proxy-cacert.md proxy-capath.md proxy-cert-type.md proxy-cert.md proxy-ciphers.md proxy-crlfile.md proxy-digest.md proxy-header.md proxy-http2.md proxy-insecure.md proxy-key-type.md proxy-key.md proxy-negotiate.md proxy-ntlm.md proxy-pass.md proxy-pinnedpubkey.md proxy-service-name.md proxy-ssl-allow-beast.md proxy-ssl-auto-client-cert.md proxy-tls13-ciphers.md proxy-tlsauthtype.md proxy-tlspassword.md proxy-tlsuser.md proxy-tlsv1.md proxy-user.md proxy.md proxy1.0.md proxytunnel.md pubkey.md quote.md random-file.md range.md rate.md raw.md referer.md remote-header-name.md remote-name-all.md remote-name.md remote-time.md remove-on-error.md request-target.md request.md resolve.md retry-all-errors.md retry-connrefused.md retry-delay.md retry-max-time.md retry.md sasl-authzid.md sasl-ir.md service-name.md show-error.md show-headers.md sigalgs.md silent.md skip-existing.md socks4.md socks4a.md socks5-basic.md socks5-gssapi-nec.md socks5-gssapi-service.md socks5-gssapi.md socks5-hostname.md socks5.md speed-limit.md speed-time.md ssl-allow-beast.md ssl-auto-client-cert.md ssl-no-revoke.md ssl-reqd.md ssl-revoke-best-effort.md ssl-sessions.md ssl.md sslv2.md sslv3.md stderr.md styled-output.md suppress-connect-headers.md tcp-fastopen.md tcp-nodelay.md telnet-option.md tftp-blksize.md tftp-no-options.md time-cond.md tls-earlydata.md tls-max.md tls13-ciphers.md tlsauthtype.md tlspassword.md tlsuser.md tlsv1.0.md tlsv1.1.md tlsv1.2.md tlsv1.3.md tlsv1.md tr-encoding.md trace-ascii.md trace-config.md trace-ids.md trace-time.md trace.md unix-socket.md upload-file.md upload-flags.md url-query.md url.md use-ascii.md user-agent.md user.md variable.md verbose.md version.md vlan-priority.md write-out.md xattr.mdexamples
.checksrc .gitignore 10-at-a-time.c CMakeLists.txt Makefile.am Makefile.example Makefile.inc README.md adddocsref.pl address-scope.c altsvc.c anyauthput.c block_ip.c cacertinmem.c certinfo.c chkspeed.c connect-to.c cookie_interface.c crawler.c debug.c default-scheme.c ephiperfifo.c evhiperfifo.c externalsocket.c fileupload.c ftp-delete.c ftp-wildcard.c ftpget.c ftpgetinfo.c ftpgetresp.c ftpsget.c ftpupload.c ftpuploadfrommem.c ftpuploadresume.c getinfo.c getinmemory.c getredirect.c getreferrer.c ghiper.c headerapi.c hiperfifo.c hsts-preload.c htmltidy.c htmltitle.cpp http-options.c http-post.c http2-download.c http2-pushinmemory.c http2-serverpush.c http2-upload.c http3-present.c http3.c httpcustomheader.c httpput-postfields.c httpput.c https.c imap-append.c imap-authzid.c imap-copy.c imap-create.c imap-delete.c imap-examine.c imap-fetch.c imap-list.c imap-lsub.c imap-multi.c imap-noop.c imap-search.c imap-ssl.c imap-store.c imap-tls.c interface.c ipv6.c keepalive.c localport.c log_failed_transfers.c maxconnects.c multi-app.c multi-debugcallback.c multi-double.c multi-event.c multi-formadd.c multi-legacy.c multi-post.c multi-single.c multi-uv.c netrc.c parseurl.c persistent.c pop3-authzid.c pop3-dele.c pop3-list.c pop3-multi.c pop3-noop.c pop3-retr.c pop3-ssl.c pop3-stat.c pop3-tls.c pop3-top.c pop3-uidl.c post-callback.c postinmemory.c postit2-formadd.c postit2.c progressfunc.c protofeats.c range.c resolve.c rtsp-options.c sendrecv.c sepheaders.c sessioninfo.c sftpget.c sftpuploadresume.c shared-connection-cache.c simple.c simplepost.c simplessl.c smooth-gtk-thread.c smtp-authzid.c smtp-expn.c smtp-mail.c smtp-mime.c smtp-multi.c smtp-ssl.c smtp-tls.c smtp-vrfy.c sslbackend.c synctime.c threaded.c unixsocket.c url2file.c urlapi.c usercertinmem.c version-check.pl websocket-cb.c websocket-updown.c websocket.c xmlstream.cinternals
BUFQ.md BUFREF.md CHECKSRC.md CLIENT-READERS.md CLIENT-WRITERS.md CODE_STYLE.md CONNECTION-FILTERS.md CREDENTIALS.md CURLX.md DYNBUF.md HASH.md LLIST.md MID.md MQTT.md MULTI-EV.md NEW-PROTOCOL.md PEERS.md PORTING.md RATELIMITS.md README.md SCORECARD.md SPLAY.md STRPARSE.md THRDPOOL-AND-QUEUE.md TIME-KEEPING.md TLS-SESSIONS.md UINT_SETS.md WEBSOCKET.mdlibcurl
opts
CMakeLists.txt CURLINFO_ACTIVESOCKET.md CURLINFO_APPCONNECT_TIME.md CURLINFO_APPCONNECT_TIME_T.md CURLINFO_CAINFO.md CURLINFO_CAPATH.md CURLINFO_CERTINFO.md CURLINFO_CONDITION_UNMET.md CURLINFO_CONNECT_TIME.md CURLINFO_CONNECT_TIME_T.md CURLINFO_CONN_ID.md CURLINFO_CONTENT_LENGTH_DOWNLOAD.md CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.md CURLINFO_CONTENT_LENGTH_UPLOAD.md CURLINFO_CONTENT_LENGTH_UPLOAD_T.md CURLINFO_CONTENT_TYPE.md CURLINFO_COOKIELIST.md CURLINFO_EARLYDATA_SENT_T.md CURLINFO_EFFECTIVE_METHOD.md CURLINFO_EFFECTIVE_URL.md CURLINFO_FILETIME.md CURLINFO_FILETIME_T.md CURLINFO_FTP_ENTRY_PATH.md CURLINFO_HEADER_SIZE.md CURLINFO_HTTPAUTH_AVAIL.md CURLINFO_HTTPAUTH_USED.md CURLINFO_HTTP_CONNECTCODE.md CURLINFO_HTTP_VERSION.md CURLINFO_LASTSOCKET.md CURLINFO_LOCAL_IP.md CURLINFO_LOCAL_PORT.md CURLINFO_NAMELOOKUP_TIME.md CURLINFO_NAMELOOKUP_TIME_T.md CURLINFO_NUM_CONNECTS.md CURLINFO_OS_ERRNO.md CURLINFO_POSTTRANSFER_TIME_T.md CURLINFO_PRETRANSFER_TIME.md CURLINFO_PRETRANSFER_TIME_T.md CURLINFO_PRIMARY_IP.md CURLINFO_PRIMARY_PORT.md CURLINFO_PRIVATE.md CURLINFO_PROTOCOL.md CURLINFO_PROXYAUTH_AVAIL.md CURLINFO_PROXYAUTH_USED.md CURLINFO_PROXY_ERROR.md CURLINFO_PROXY_SSL_VERIFYRESULT.md CURLINFO_QUEUE_TIME_T.md CURLINFO_REDIRECT_COUNT.md CURLINFO_REDIRECT_TIME.md CURLINFO_REDIRECT_TIME_T.md CURLINFO_REDIRECT_URL.md CURLINFO_REFERER.md CURLINFO_REQUEST_SIZE.md CURLINFO_RESPONSE_CODE.md CURLINFO_RETRY_AFTER.md CURLINFO_RTSP_CLIENT_CSEQ.md CURLINFO_RTSP_CSEQ_RECV.md CURLINFO_RTSP_SERVER_CSEQ.md CURLINFO_RTSP_SESSION_ID.md CURLINFO_SCHEME.md CURLINFO_SIZE_DELIVERED.md CURLINFO_SIZE_DOWNLOAD.md CURLINFO_SIZE_DOWNLOAD_T.md CURLINFO_SIZE_UPLOAD.md CURLINFO_SIZE_UPLOAD_T.md CURLINFO_SPEED_DOWNLOAD.md CURLINFO_SPEED_DOWNLOAD_T.md CURLINFO_SPEED_UPLOAD.md CURLINFO_SPEED_UPLOAD_T.md CURLINFO_SSL_ENGINES.md CURLINFO_SSL_VERIFYRESULT.md CURLINFO_STARTTRANSFER_TIME.md CURLINFO_STARTTRANSFER_TIME_T.md CURLINFO_TLS_SESSION.md CURLINFO_TLS_SSL_PTR.md CURLINFO_TOTAL_TIME.md CURLINFO_TOTAL_TIME_T.md CURLINFO_USED_PROXY.md CURLINFO_XFER_ID.md CURLMINFO_XFERS_ADDED.md CURLMINFO_XFERS_CURRENT.md CURLMINFO_XFERS_DONE.md CURLMINFO_XFERS_PENDING.md CURLMINFO_XFERS_RUNNING.md CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.md CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.md CURLMOPT_MAXCONNECTS.md CURLMOPT_MAX_CONCURRENT_STREAMS.md CURLMOPT_MAX_HOST_CONNECTIONS.md CURLMOPT_MAX_PIPELINE_LENGTH.md CURLMOPT_MAX_TOTAL_CONNECTIONS.md CURLMOPT_NETWORK_CHANGED.md CURLMOPT_NOTIFYDATA.md CURLMOPT_NOTIFYFUNCTION.md CURLMOPT_PIPELINING.md CURLMOPT_PIPELINING_SERVER_BL.md CURLMOPT_PIPELINING_SITE_BL.md CURLMOPT_PUSHDATA.md CURLMOPT_PUSHFUNCTION.md CURLMOPT_QUICK_EXIT.md CURLMOPT_RESOLVE_THREADS_MAX.md CURLMOPT_SOCKETDATA.md CURLMOPT_SOCKETFUNCTION.md CURLMOPT_TIMERDATA.md CURLMOPT_TIMERFUNCTION.md CURLOPT_ABSTRACT_UNIX_SOCKET.md CURLOPT_ACCEPTTIMEOUT_MS.md CURLOPT_ACCEPT_ENCODING.md CURLOPT_ADDRESS_SCOPE.md CURLOPT_ALTSVC.md CURLOPT_ALTSVC_CTRL.md CURLOPT_APPEND.md CURLOPT_AUTOREFERER.md CURLOPT_AWS_SIGV4.md CURLOPT_BUFFERSIZE.md CURLOPT_CAINFO.md CURLOPT_CAINFO_BLOB.md CURLOPT_CAPATH.md CURLOPT_CA_CACHE_TIMEOUT.md CURLOPT_CERTINFO.md CURLOPT_CHUNK_BGN_FUNCTION.md CURLOPT_CHUNK_DATA.md CURLOPT_CHUNK_END_FUNCTION.md CURLOPT_CLOSESOCKETDATA.md CURLOPT_CLOSESOCKETFUNCTION.md CURLOPT_CONNECTTIMEOUT.md CURLOPT_CONNECTTIMEOUT_MS.md CURLOPT_CONNECT_ONLY.md CURLOPT_CONNECT_TO.md CURLOPT_CONV_FROM_NETWORK_FUNCTION.md CURLOPT_CONV_FROM_UTF8_FUNCTION.md CURLOPT_CONV_TO_NETWORK_FUNCTION.md CURLOPT_COOKIE.md CURLOPT_COOKIEFILE.md CURLOPT_COOKIEJAR.md CURLOPT_COOKIELIST.md CURLOPT_COOKIESESSION.md CURLOPT_COPYPOSTFIELDS.md CURLOPT_CRLF.md CURLOPT_CRLFILE.md CURLOPT_CURLU.md CURLOPT_CUSTOMREQUEST.md CURLOPT_DEBUGDATA.md CURLOPT_DEBUGFUNCTION.md CURLOPT_DEFAULT_PROTOCOL.md CURLOPT_DIRLISTONLY.md CURLOPT_DISALLOW_USERNAME_IN_URL.md CURLOPT_DNS_CACHE_TIMEOUT.md CURLOPT_DNS_INTERFACE.md CURLOPT_DNS_LOCAL_IP4.md CURLOPT_DNS_LOCAL_IP6.md CURLOPT_DNS_SERVERS.md CURLOPT_DNS_SHUFFLE_ADDRESSES.md CURLOPT_DNS_USE_GLOBAL_CACHE.md CURLOPT_DOH_SSL_VERIFYHOST.md CURLOPT_DOH_SSL_VERIFYPEER.md CURLOPT_DOH_SSL_VERIFYSTATUS.md CURLOPT_DOH_URL.md CURLOPT_ECH.md CURLOPT_EGDSOCKET.md CURLOPT_ERRORBUFFER.md CURLOPT_EXPECT_100_TIMEOUT_MS.md CURLOPT_FAILONERROR.md CURLOPT_FILETIME.md CURLOPT_FNMATCH_DATA.md CURLOPT_FNMATCH_FUNCTION.md CURLOPT_FOLLOWLOCATION.md CURLOPT_FORBID_REUSE.md CURLOPT_FRESH_CONNECT.md CURLOPT_FTPPORT.md CURLOPT_FTPSSLAUTH.md CURLOPT_FTP_ACCOUNT.md CURLOPT_FTP_ALTERNATIVE_TO_USER.md CURLOPT_FTP_CREATE_MISSING_DIRS.md CURLOPT_FTP_FILEMETHOD.md CURLOPT_FTP_SKIP_PASV_IP.md CURLOPT_FTP_SSL_CCC.md CURLOPT_FTP_USE_EPRT.md CURLOPT_FTP_USE_EPSV.md CURLOPT_FTP_USE_PRET.md CURLOPT_GSSAPI_DELEGATION.md CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.md CURLOPT_HAPROXYPROTOCOL.md CURLOPT_HAPROXY_CLIENT_IP.md CURLOPT_HEADER.md CURLOPT_HEADERDATA.md CURLOPT_HEADERFUNCTION.md CURLOPT_HEADEROPT.md CURLOPT_HSTS.md CURLOPT_HSTSREADDATA.md CURLOPT_HSTSREADFUNCTION.md CURLOPT_HSTSWRITEDATA.md CURLOPT_HSTSWRITEFUNCTION.md CURLOPT_HSTS_CTRL.md CURLOPT_HTTP09_ALLOWED.md CURLOPT_HTTP200ALIASES.md CURLOPT_HTTPAUTH.md CURLOPT_HTTPGET.md CURLOPT_HTTPHEADER.md CURLOPT_HTTPPOST.md CURLOPT_HTTPPROXYTUNNEL.md CURLOPT_HTTP_CONTENT_DECODING.md CURLOPT_HTTP_TRANSFER_DECODING.md CURLOPT_HTTP_VERSION.md CURLOPT_IGNORE_CONTENT_LENGTH.md CURLOPT_INFILESIZE.md CURLOPT_INFILESIZE_LARGE.md CURLOPT_INTERFACE.md CURLOPT_INTERLEAVEDATA.md CURLOPT_INTERLEAVEFUNCTION.md CURLOPT_IOCTLDATA.md CURLOPT_IOCTLFUNCTION.md CURLOPT_IPRESOLVE.md CURLOPT_ISSUERCERT.md CURLOPT_ISSUERCERT_BLOB.md CURLOPT_KEEP_SENDING_ON_ERROR.md CURLOPT_KEYPASSWD.md CURLOPT_KRBLEVEL.md CURLOPT_LOCALPORT.md CURLOPT_LOCALPORTRANGE.md CURLOPT_LOGIN_OPTIONS.md CURLOPT_LOW_SPEED_LIMIT.md CURLOPT_LOW_SPEED_TIME.md CURLOPT_MAIL_AUTH.md CURLOPT_MAIL_FROM.md CURLOPT_MAIL_RCPT.md CURLOPT_MAIL_RCPT_ALLOWFAILS.md CURLOPT_MAXAGE_CONN.md CURLOPT_MAXCONNECTS.md CURLOPT_MAXFILESIZE.md CURLOPT_MAXFILESIZE_LARGE.md CURLOPT_MAXLIFETIME_CONN.md CURLOPT_MAXREDIRS.md CURLOPT_MAX_RECV_SPEED_LARGE.md CURLOPT_MAX_SEND_SPEED_LARGE.md CURLOPT_MIMEPOST.md CURLOPT_MIME_OPTIONS.md CURLOPT_NETRC.md CURLOPT_NETRC_FILE.md CURLOPT_NEW_DIRECTORY_PERMS.md CURLOPT_NEW_FILE_PERMS.md CURLOPT_NOBODY.md CURLOPT_NOPROGRESS.md CURLOPT_NOPROXY.md CURLOPT_NOSIGNAL.md CURLOPT_OPENSOCKETDATA.md CURLOPT_OPENSOCKETFUNCTION.md CURLOPT_PASSWORD.md CURLOPT_PATH_AS_IS.md CURLOPT_PINNEDPUBLICKEY.md CURLOPT_PIPEWAIT.md CURLOPT_PORT.md CURLOPT_POST.md CURLOPT_POSTFIELDS.md CURLOPT_POSTFIELDSIZE.md CURLOPT_POSTFIELDSIZE_LARGE.md CURLOPT_POSTQUOTE.md CURLOPT_POSTREDIR.md CURLOPT_PREQUOTE.md CURLOPT_PREREQDATA.md CURLOPT_PREREQFUNCTION.md CURLOPT_PRE_PROXY.md CURLOPT_PRIVATE.md CURLOPT_PROGRESSDATA.md CURLOPT_PROGRESSFUNCTION.md CURLOPT_PROTOCOLS.md CURLOPT_PROTOCOLS_STR.md CURLOPT_PROXY.md CURLOPT_PROXYAUTH.md CURLOPT_PROXYHEADER.md CURLOPT_PROXYPASSWORD.md CURLOPT_PROXYPORT.md CURLOPT_PROXYTYPE.md CURLOPT_PROXYUSERNAME.md CURLOPT_PROXYUSERPWD.md CURLOPT_PROXY_CAINFO.md CURLOPT_PROXY_CAINFO_BLOB.md CURLOPT_PROXY_CAPATH.md CURLOPT_PROXY_CRLFILE.md CURLOPT_PROXY_ISSUERCERT.md CURLOPT_PROXY_ISSUERCERT_BLOB.md CURLOPT_PROXY_KEYPASSWD.md CURLOPT_PROXY_PINNEDPUBLICKEY.md CURLOPT_PROXY_SERVICE_NAME.md CURLOPT_PROXY_SSLCERT.md CURLOPT_PROXY_SSLCERTTYPE.md CURLOPT_PROXY_SSLCERT_BLOB.md CURLOPT_PROXY_SSLKEY.md CURLOPT_PROXY_SSLKEYTYPE.md CURLOPT_PROXY_SSLKEY_BLOB.md CURLOPT_PROXY_SSLVERSION.md CURLOPT_PROXY_SSL_CIPHER_LIST.md CURLOPT_PROXY_SSL_OPTIONS.md CURLOPT_PROXY_SSL_VERIFYHOST.md CURLOPT_PROXY_SSL_VERIFYPEER.md CURLOPT_PROXY_TLS13_CIPHERS.md CURLOPT_PROXY_TLSAUTH_PASSWORD.md CURLOPT_PROXY_TLSAUTH_TYPE.md CURLOPT_PROXY_TLSAUTH_USERNAME.md CURLOPT_PROXY_TRANSFER_MODE.md CURLOPT_PUT.md CURLOPT_QUICK_EXIT.md CURLOPT_QUOTE.md CURLOPT_RANDOM_FILE.md CURLOPT_RANGE.md CURLOPT_READDATA.md CURLOPT_READFUNCTION.md CURLOPT_REDIR_PROTOCOLS.md CURLOPT_REDIR_PROTOCOLS_STR.md CURLOPT_REFERER.md CURLOPT_REQUEST_TARGET.md CURLOPT_RESOLVE.md CURLOPT_RESOLVER_START_DATA.md CURLOPT_RESOLVER_START_FUNCTION.md CURLOPT_RESUME_FROM.md CURLOPT_RESUME_FROM_LARGE.md CURLOPT_RTSP_CLIENT_CSEQ.md CURLOPT_RTSP_REQUEST.md CURLOPT_RTSP_SERVER_CSEQ.md CURLOPT_RTSP_SESSION_ID.md CURLOPT_RTSP_STREAM_URI.md CURLOPT_RTSP_TRANSPORT.md CURLOPT_SASL_AUTHZID.md CURLOPT_SASL_IR.md CURLOPT_SEEKDATA.md CURLOPT_SEEKFUNCTION.md CURLOPT_SERVER_RESPONSE_TIMEOUT.md CURLOPT_SERVER_RESPONSE_TIMEOUT_MS.md CURLOPT_SERVICE_NAME.md CURLOPT_SHARE.md CURLOPT_SOCKOPTDATA.md CURLOPT_SOCKOPTFUNCTION.md CURLOPT_SOCKS5_AUTH.md CURLOPT_SOCKS5_GSSAPI_NEC.md CURLOPT_SOCKS5_GSSAPI_SERVICE.md CURLOPT_SSH_AUTH_TYPES.md CURLOPT_SSH_COMPRESSION.md CURLOPT_SSH_HOSTKEYDATA.md CURLOPT_SSH_HOSTKEYFUNCTION.md CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.md CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.md CURLOPT_SSH_KEYDATA.md CURLOPT_SSH_KEYFUNCTION.md CURLOPT_SSH_KNOWNHOSTS.md CURLOPT_SSH_PRIVATE_KEYFILE.md CURLOPT_SSH_PUBLIC_KEYFILE.md CURLOPT_SSLCERT.md CURLOPT_SSLCERTTYPE.md CURLOPT_SSLCERT_BLOB.md CURLOPT_SSLENGINE.md CURLOPT_SSLENGINE_DEFAULT.md CURLOPT_SSLKEY.md CURLOPT_SSLKEYTYPE.md CURLOPT_SSLKEY_BLOB.md CURLOPT_SSLVERSION.md CURLOPT_SSL_CIPHER_LIST.md CURLOPT_SSL_CTX_DATA.md CURLOPT_SSL_CTX_FUNCTION.md CURLOPT_SSL_EC_CURVES.md CURLOPT_SSL_ENABLE_ALPN.md CURLOPT_SSL_ENABLE_NPN.md CURLOPT_SSL_FALSESTART.md CURLOPT_SSL_OPTIONS.md CURLOPT_SSL_SESSIONID_CACHE.md CURLOPT_SSL_SIGNATURE_ALGORITHMS.md CURLOPT_SSL_VERIFYHOST.md CURLOPT_SSL_VERIFYPEER.md CURLOPT_SSL_VERIFYSTATUS.md CURLOPT_STDERR.md CURLOPT_STREAM_DEPENDS.md CURLOPT_STREAM_DEPENDS_E.md CURLOPT_STREAM_WEIGHT.md CURLOPT_SUPPRESS_CONNECT_HEADERS.md CURLOPT_TCP_FASTOPEN.md CURLOPT_TCP_KEEPALIVE.md CURLOPT_TCP_KEEPCNT.md CURLOPT_TCP_KEEPIDLE.md CURLOPT_TCP_KEEPINTVL.md CURLOPT_TCP_NODELAY.md CURLOPT_TELNETOPTIONS.md CURLOPT_TFTP_BLKSIZE.md CURLOPT_TFTP_NO_OPTIONS.md CURLOPT_TIMECONDITION.md CURLOPT_TIMEOUT.md CURLOPT_TIMEOUT_MS.md CURLOPT_TIMEVALUE.md CURLOPT_TIMEVALUE_LARGE.md CURLOPT_TLS13_CIPHERS.md CURLOPT_TLSAUTH_PASSWORD.md CURLOPT_TLSAUTH_TYPE.md CURLOPT_TLSAUTH_USERNAME.md CURLOPT_TRAILERDATA.md CURLOPT_TRAILERFUNCTION.md CURLOPT_TRANSFERTEXT.md CURLOPT_TRANSFER_ENCODING.md CURLOPT_UNIX_SOCKET_PATH.md CURLOPT_UNRESTRICTED_AUTH.md CURLOPT_UPKEEP_INTERVAL_MS.md CURLOPT_UPLOAD.md CURLOPT_UPLOAD_BUFFERSIZE.md CURLOPT_UPLOAD_FLAGS.md CURLOPT_URL.md CURLOPT_USERAGENT.md CURLOPT_USERNAME.md CURLOPT_USERPWD.md CURLOPT_USE_SSL.md CURLOPT_VERBOSE.md CURLOPT_WILDCARDMATCH.md CURLOPT_WRITEDATA.md CURLOPT_WRITEFUNCTION.md CURLOPT_WS_OPTIONS.md CURLOPT_XFERINFODATA.md CURLOPT_XFERINFOFUNCTION.md CURLOPT_XOAUTH2_BEARER.md CURLSHOPT_LOCKFUNC.md CURLSHOPT_SHARE.md CURLSHOPT_UNLOCKFUNC.md CURLSHOPT_UNSHARE.md CURLSHOPT_USERDATA.md Makefile.am Makefile.incinclude
curl
Makefile.am curl.h curlver.h easy.h header.h mprintf.h multi.h options.h stdcheaders.h system.h typecheck-gcc.h urlapi.h websockets.hlib
curlx
base64.c base64.h basename.c basename.h dynbuf.c dynbuf.h fopen.c fopen.h inet_ntop.c inet_ntop.h inet_pton.c inet_pton.h multibyte.c multibyte.h nonblock.c nonblock.h snprintf.c snprintf.h strcopy.c strcopy.h strdup.c strdup.h strerr.c strerr.h strparse.c strparse.h timediff.c timediff.h timeval.c timeval.h version_win32.c version_win32.h wait.c wait.h warnless.c warnless.h winapi.c winapi.hvauth
cleartext.c cram.c digest.c digest.h digest_sspi.c gsasl.c krb5_gssapi.c krb5_sspi.c ntlm.c ntlm_sspi.c oauth2.c spnego_gssapi.c spnego_sspi.c vauth.c vauth.hvquic
curl_ngtcp2.c curl_ngtcp2.h curl_quiche.c curl_quiche.h vquic-tls.c vquic-tls.h vquic.c vquic.h vquic_int.hvtls
apple.c apple.h cipher_suite.c cipher_suite.h gtls.c gtls.h hostcheck.c hostcheck.h keylog.c keylog.h mbedtls.c mbedtls.h openssl.c openssl.h rustls.c rustls.h schannel.c schannel.h schannel_int.h schannel_verify.c vtls.c vtls.h vtls_int.h vtls_scache.c vtls_scache.h vtls_spack.c vtls_spack.h wolfssl.c wolfssl.h x509asn1.c x509asn1.hm4
.gitignore curl-amissl.m4 curl-apple-sectrust.m4 curl-compilers.m4 curl-confopts.m4 curl-functions.m4 curl-gnutls.m4 curl-mbedtls.m4 curl-openssl.m4 curl-override.m4 curl-reentrant.m4 curl-rustls.m4 curl-schannel.m4 curl-sysconfig.m4 curl-wolfssl.m4 xc-am-iface.m4 xc-cc-check.m4 xc-lt-iface.m4 xc-val-flgs.m4 zz40-xc-ovr.m4 zz50-xc-ovr.m4projects
OS400
.checksrc README.OS400 ccsidcurl.c ccsidcurl.h config400.default curl.cmd curl.inc.in curlcl.c curlmain.c initscript.sh make-docs.sh make-include.sh make-lib.sh make-src.sh make-tests.sh makefile.sh os400sys.c os400sys.hWindows
tmpl
.gitattributes README.txt curl-all.sln curl.sln curl.vcxproj curl.vcxproj.filters libcurl.sln libcurl.vcxproj libcurl.vcxproj.filtersvms
Makefile.am backup_gnv_curl_src.com build_curl-config_script.com build_gnv_curl.com build_gnv_curl_pcsi_desc.com build_gnv_curl_pcsi_text.com build_gnv_curl_release_notes.com build_libcurl_pc.com build_vms.com clean_gnv_curl.com compare_curl_source.com config_h.com curl_crtl_init.c curl_gnv_build_steps.txt curl_release_note_start.txt curl_startup.com curlmsg.h curlmsg.msg curlmsg.sdl curlmsg_vms.h generate_config_vms_h_curl.com generate_vax_transfer.com gnv_conftest.c_first gnv_curl_configure.sh gnv_libcurl_symbols.opt gnv_link_curl.com macro32_exactcase.patch make_gnv_curl_install.sh make_pcsi_curl_kit_name.com pcsi_gnv_curl_file_list.txt pcsi_product_gnv_curl.com readme report_openssl_version.c setup_gnv_curl_build.com stage_curl_install.com vms_eco_level.hscripts
.checksrc CMakeLists.txt Makefile.am badwords badwords-all badwords.txt cd2cd cd2nroff cdall checksrc-all.pl checksrc.pl cmakelint.sh completion.pl contributors.sh contrithanks.sh coverage.sh delta dmaketgz extract-unit-protos firefox-db2pem.sh installcheck.sh maketgz managen mdlinkcheck mk-ca-bundle.pl mk-unity.pl nroff2cd perlcheck.sh pythonlint.sh randdisable release-notes.pl release-tools.sh schemetable.c singleuse.pl spacecheck.pl top-complexity top-length verify-release wcurlsrc
.checksrc .gitignore CMakeLists.txt Makefile.am Makefile.inc config2setopts.c config2setopts.h curl.rc curlinfo.c mk-file-embed.pl mkhelp.pl slist_wc.c slist_wc.h terminal.c terminal.h tool_cb_dbg.c tool_cb_dbg.h tool_cb_hdr.c tool_cb_hdr.h tool_cb_prg.c tool_cb_prg.h tool_cb_rea.c tool_cb_rea.h tool_cb_see.c tool_cb_see.h tool_cb_soc.c tool_cb_soc.h tool_cb_wrt.c tool_cb_wrt.h tool_cfgable.c tool_cfgable.h tool_dirhie.c tool_dirhie.h tool_doswin.c tool_doswin.h tool_easysrc.c tool_easysrc.h tool_filetime.c tool_filetime.h tool_findfile.c tool_findfile.h tool_formparse.c tool_formparse.h tool_getparam.c tool_getparam.h tool_getpass.c tool_getpass.h tool_help.c tool_help.h tool_helpers.c tool_helpers.h tool_hugehelp.h tool_ipfs.c tool_ipfs.h tool_libinfo.c tool_libinfo.h tool_listhelp.c tool_main.c tool_main.h tool_msgs.c tool_msgs.h tool_operate.c tool_operate.h tool_operhlp.c tool_operhlp.h tool_paramhlp.c tool_paramhlp.h tool_parsecfg.c tool_parsecfg.h tool_progress.c tool_progress.h tool_sdecls.h tool_setopt.c tool_setopt.h tool_setup.h tool_ssls.c tool_ssls.h tool_stderr.c tool_stderr.h tool_urlglob.c tool_urlglob.h tool_util.c tool_util.h tool_version.h tool_vms.c tool_vms.h tool_writeout.c tool_writeout.h tool_writeout_json.c tool_writeout_json.h tool_xattr.c tool_xattr.h var.c var.htests
certs
.gitignore CMakeLists.txt Makefile.am Makefile.inc genserv.pl srp-verifier-conf srp-verifier-db test-ca.cnf test-ca.prm test-client-cert.prm test-client-eku-only.prm test-localhost-san-first.prm test-localhost-san-last.prm test-localhost.nn.prm test-localhost.prm test-localhost0h.prmdata
.gitignore DISABLED Makefile.am data-xml1 data1400.c data1401.c data1402.c data1403.c data1404.c data1405.c data1406.c data1407.c data1420.c data1461.txt data1463.txt data1465.c data1481.c data1705-1.md data1705-2.md data1705-3.md data1705-4.md data1705-stdout.1 data1706-1.md data1706-2.md data1706-3.md data1706-4.md data1706-stdout.txt data320.html test1 test10 test100 test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 test1008 test1009 test101 test1010 test1011 test1012 test1013 test1014 test1015 test1016 test1017 test1018 test1019 test102 test1020 test1021 test1022 test1023 test1024 test1025 test1026 test1027 test1028 test1029 test103 test1030 test1031 test1032 test1033 test1034 test1035 test1036 test1037 test1038 test1039 test104 test1040 test1041 test1042 test1043 test1044 test1045 test1046 test1047 test1048 test1049 test105 test1050 test1051 test1052 test1053 test1054 test1055 test1056 test1057 test1058 test1059 test106 test1060 test1061 test1062 test1063 test1064 test1065 test1066 test1067 test1068 test1069 test107 test1070 test1071 test1072 test1073 test1074 test1075 test1076 test1077 test1078 test1079 test108 test1080 test1081 test1082 test1083 test1084 test1085 test1086 test1087 test1088 test1089 test109 test1090 test1091 test1092 test1093 test1094 test1095 test1096 test1097 test1098 test1099 test11 test110 test1100 test1101 test1102 test1103 test1104 test1105 test1106 test1107 test1108 test1109 test111 test1110 test1111 test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 test112 test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 test1128 test1129 test113 test1130 test1131 test1132 test1133 test1134 test1135 test1136 test1137 test1138 test1139 test114 test1140 test1141 test1142 test1143 test1144 test1145 test1146 test1147 test1148 test1149 test115 test1150 test1151 test1152 test1153 test1154 test1155 test1156 test1157 test1158 test1159 test116 test1160 test1161 test1162 test1163 test1164 test1165 test1166 test1167 test1168 test1169 test117 test1170 test1171 test1172 test1173 test1174 test1175 test1176 test1177 test1178 test1179 test118 test1180 test1181 test1182 test1183 test1184 test1185 test1186 test1187 test1188 test1189 test119 test1190 test1191 test1192 test1193 test1194 test1195 test1196 test1197 test1198 test1199 test12 test120 test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 test1208 test1209 test121 test1210 test1211 test1212 test1213 test1214 test1215 test1216 test1217 test1218 test1219 test122 test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 test1228 test1229 test123 test1230 test1231 test1232 test1233 test1234 test1235 test1236 test1237 test1238 test1239 test124 test1240 test1241 test1242 test1243 test1244 test1245 test1246 test1247 test1248 test1249 test125 test1250 test1251 test1252 test1253 test1254 test1255 test1256 test1257 test1258 test1259 test126 test1260 test1261 test1262 test1263 test1264 test1265 test1266 test1267 test1268 test1269 test127 test1270 test1271 test1272 test1273 test1274 test1275 test1276 test1277 test1278 test1279 test128 test1280 test1281 test1282 test1283 test1284 test1285 test1286 test1287 test1288 test1289 test129 test1290 test1291 test1292 test1293 test1294 test1295 test1296 test1297 test1298 test1299 test13 test130 test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 test1308 test1309 test131 test1310 test1311 test1312 test1313 test1314 test1315 test1316 test1317 test1318 test1319 test132 test1320 test1321 test1322 test1323 test1324 test1325 test1326 test1327 test1328 test1329 test133 test1330 test1331 test1332 test1333 test1334 test1335 test1336 test1337 test1338 test1339 test134 test1340 test1341 test1342 test1343 test1344 test1345 test1346 test1347 test1348 test1349 test135 test1350 test1351 test1352 test1353 test1354 test1355 test1356 test1357 test1358 test1359 test136 test1360 test1361 test1362 test1363 test1364 test1365 test1366 test1367 test1368 test1369 test137 test1370 test1371 test1372 test1373 test1374 test1375 test1376 test1377 test1378 test1379 test138 test1380 test1381 test1382 test1383 test1384 test1385 test1386 test1387 test1388 test1389 test139 test1390 test1391 test1392 test1393 test1394 test1395 test1396 test1397 test1398 test1399 test14 test140 test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 test1408 test1409 test141 test1410 test1411 test1412 test1413 test1414 test1415 test1416 test1417 test1418 test1419 test142 test1420 test1421 test1422 test1423 test1424 test1425 test1426 test1427 test1428 test1429 test143 test1430 test1431 test1432 test1433 test1434 test1435 test1436 test1437 test1438 test1439 test144 test1440 test1441 test1442 test1443 test1444 test1445 test1446 test1447 test1448 test1449 test145 test1450 test1451 test1452 test1453 test1454 test1455 test1456 test1457 test1458 test1459 test146 test1460 test1461 test1462 test1463 test1464 test1465 test1466 test1467 test1468 test1469 test147 test1470 test1471 test1472 test1473 test1474 test1475 test1476 test1477 test1478 test1479 test148 test1480 test1481 test1482 test1483 test1484 test1485 test1486 test1487 test1488 test1489 test149 test1490 test1491 test1492 test1493 test1494 test1495 test1496 test1497 test1498 test1499 test15 test150 test1500 test1501 test1502 test1503 test1504 test1505 test1506 test1507 test1508 test1509 test151 test1510 test1511 test1512 test1513 test1514 test1515 test1516 test1517 test1518 test1519 test152 test1520 test1521 test1522 test1523 test1524 test1525 test1526 test1527 test1528 test1529 test153 test1530 test1531 test1532 test1533 test1534 test1535 test1536 test1537 test1538 test1539 test154 test1540 test1541 test1542 test1543 test1544 test1545 test1546 test1547 test1548 test1549 test155 test1550 test1551 test1552 test1553 test1554 test1555 test1556 test1557 test1558 test1559 test156 test1560 test1561 test1562 test1563 test1564 test1565 test1566 test1567 test1568 test1569 test157 test1570 test1571 test1572 test1573 test1574 test1575 test1576 test1577 test1578 test1579 test158 test1580 test1581 test1582 test1583 test1584 test1585 test1586 test1587 test1588 test1589 test159 test1590 test1591 test1592 test1593 test1594 test1595 test1596 test1597 test1598 test1599 test16 test160 test1600 test1601 test1602 test1603 test1604 test1605 test1606 test1607 test1608 test1609 test161 test1610 test1611 test1612 test1613 test1614 test1615 test1616 test1617 test1618 test1619 test162 test1620 test1621 test1622 test1623 test1624 test1625 test1626 test1627 test1628 test1629 test163 test1630 test1631 test1632 test1633 test1634 test1635 test1636 test1637 test1638 test1639 test164 test1640 test1641 test1642 test1643 test1644 test1645 test165 test1650 test1651 test1652 test1653 test1654 test1655 test1656 test1657 test1658 test1659 test166 test1660 test1661 test1662 test1663 test1664 test1665 test1666 test1667 test1668 test1669 test167 test1670 test1671 test1672 test1673 test1674 test1675 test1676 test168 test1680 test1681 test1682 test1683 test1684 test1685 test169 test17 test170 test1700 test1701 test1702 test1703 test1704 test1705 test1706 test1707 test1708 test1709 test171 test1710 test1711 test1712 test1713 test1714 test1715 test172 test1720 test1721 test173 test174 test175 test176 test177 test178 test179 test18 test180 test1800 test1801 test1802 test181 test182 test183 test184 test1847 test1848 test1849 test185 test1850 test1851 test186 test187 test188 test189 test19 test190 test1900 test1901 test1902 test1903 test1904 test1905 test1906 test1907 test1908 test1909 test191 test1910 test1911 test1912 test1913 test1914 test1915 test1916 test1917 test1918 test1919 test192 test1920 test1921 test193 test1933 test1934 test1935 test1936 test1937 test1938 test1939 test194 test1940 test1941 test1942 test1943 test1944 test1945 test1946 test1947 test1948 test195 test1955 test1956 test1957 test1958 test1959 test196 test1960 test1964 test1965 test1966 test197 test1970 test1971 test1972 test1973 test1974 test1975 test1976 test1977 test1978 test1979 test198 test1980 test1981 test1982 test1983 test1984 test199 test2 test20 test200 test2000 test2001 test2002 test2003 test2004 test2005 test2006 test2007 test2008 test2009 test201 test2010 test2011 test2012 test2013 test2014 test202 test2023 test2024 test2025 test2026 test2027 test2028 test2029 test203 test2030 test2031 test2032 test2033 test2034 test2035 test2037 test2038 test2039 test204 test2040 test2041 test2042 test2043 test2044 test2045 test2046 test2047 test2048 test2049 test205 test2050 test2051 test2052 test2053 test2054 test2055 test2056 test2057 test2058 test2059 test206 test2060 test2061 test2062 test2063 test2064 test2065 test2066 test2067 test2068 test2069 test207 test2070 test2071 test2072 test2073 test2074 test2075 test2076 test2077 test2078 test2079 test208 test2080 test2081 test2082 test2083 test2084 test2085 test2086 test2087 test2088 test2089 test209 test2090 test2091 test2092 test21 test210 test2100 test2101 test2102 test2103 test2104 test211 test212 test213 test214 test215 test216 test217 test218 test219 test22 test220 test2200 test2201 test2202 test2203 test2204 test2205 test2206 test2207 test221 test222 test223 test224 test225 test226 test227 test228 test229 test23 test230 test2300 test2301 test2302 test2303 test2304 test2306 test2307 test2308 test2309 test231 test232 test233 test234 test235 test236 test237 test238 test239 test24 test240 test2400 test2401 test2402 test2403 test2404 test2405 test2406 test2407 test2408 test2409 test241 test2410 test2411 test242 test243 test244 test245 test246 test247 test248 test249 test25 test250 test2500 test2501 test2502 test2503 test2504 test2505 test2506 test251 test252 test253 test254 test255 test256 test257 test258 test259 test26 test260 test2600 test2601 test2602 test2603 test2604 test2605 test261 test262 test263 test264 test265 test266 test267 test268 test269 test27 test270 test2700 test2701 test2702 test2703 test2704 test2705 test2706 test2707 test2708 test2709 test271 test2710 test2711 test2712 test2713 test2714 test2715 test2716 test2717 test2718 test2719 test272 test2720 test2721 test2722 test2723 test273 test274 test275 test276 test277 test278 test279 test28 test280 test281 test282 test283 test284 test285 test286 test287 test288 test289 test29 test290 test291 test292 test293 test294 test295 test296 test297 test298 test299 test3 test30 test300 test3000 test3001 test3002 test3003 test3004 test3005 test3006 test3007 test3008 test3009 test301 test3010 test3011 test3012 test3013 test3014 test3015 test3016 test3017 test3018 test3019 test302 test3020 test3021 test3022 test3023 test3024 test3025 test3026 test3027 test3028 test3029 test303 test3030 test3031 test3032 test3033 test3034 test3035 test3036 test304 test305 test306 test307 test308 test309 test31 test310 test3100 test3101 test3102 test3103 test3104 test3105 test3106 test311 test312 test313 test314 test315 test316 test317 test318 test319 test32 test320 test3200 test3201 test3202 test3203 test3204 test3205 test3206 test3207 test3208 test3209 test321 test3210 test3211 test3212 test3213 test3214 test3215 test3216 test3217 test3218 test3219 test322 test3220 test323 test324 test325 test326 test327 test328 test329 test33 test330 test3300 test3301 test3302 test331 test332 test333 test334 test335 test336 test337 test338 test339 test34 test340 test341 test342 test343 test344 test345 test346 test347 test348 test349 test35 test350 test351 test352 test353 test354 test355 test356 test357 test358 test359 test36 test360 test361 test362 test363 test364 test365 test366 test367 test368 test369 test37 test370 test371 test372 test373 test374 test375 test376 test378 test379 test38 test380 test381 test383 test384 test385 test386 test387 test388 test389 test39 test390 test391 test392 test393 test394 test395 test396 test397 test398 test399 test4 test40 test400 test4000 test4001 test401 test402 test403 test404 test405 test406 test407 test408 test409 test41 test410 test411 test412 test413 test414 test415 test416 test417 test418 test419 test42 test420 test421 test422 test423 test424 test425 test426 test427 test428 test429 test43 test430 test431 test432 test433 test434 test435 test436 test437 test438 test439 test44 test440 test441 test442 test443 test444 test445 test446 test447 test448 test449 test45 test450 test451 test452 test453 test454 test455 test456 test457 test458 test459 test46 test460 test461 test462 test463 test467 test468 test469 test47 test470 test471 test472 test473 test474 test475 test476 test477 test478 test479 test48 test480 test481 test482 test483 test484 test485 test486 test487 test488 test489 test49 test490 test491 test492 test493 test494 test495 test496 test497 test498 test499 test5 test50 test500 test501 test502 test503 test504 test505 test506 test507 test508 test509 test51 test510 test511 test512 test513 test514 test515 test516 test517 test518 test519 test52 test520 test521 test522 test523 test524 test525 test526 test527 test528 test529 test53 test530 test531 test532 test533 test534 test535 test536 test537 test538 test539 test54 test540 test541 test542 test543 test544 test545 test546 test547 test548 test549 test55 test550 test551 test552 test553 test554 test555 test556 test557 test558 test559 test56 test560 test561 test562 test563 test564 test565 test566 test567 test568 test569 test57 test570 test571 test572 test573 test574 test575 test576 test577 test578 test579 test58 test580 test581 test582 test583 test584 test585 test586 test587 test588 test589 test59 test590 test591 test592 test593 test594 test595 test596 test597 test598 test599 test6 test60 test600 test601 test602 test603 test604 test605 test606 test607 test608 test609 test61 test610 test611 test612 test613 test614 test615 test616 test617 test618 test619 test62 test620 test621 test622 test623 test624 test625 test626 test627 test628 test629 test63 test630 test631 test632 test633 test634 test635 test636 test637 test638 test639 test64 test640 test641 test642 test643 test644 test645 test646 test647 test648 test649 test65 test650 test651 test652 test653 test654 test655 test656 test658 test659 test66 test660 test661 test662 test663 test664 test665 test666 test667 test668 test669 test67 test670 test671 test672 test673 test674 test675 test676 test677 test678 test679 test68 test680 test681 test682 test683 test684 test685 test686 test687 test688 test689 test69 test690 test691 test692 test693 test694 test695 test696 test697 test698 test699 test7 test70 test700 test701 test702 test703 test704 test705 test706 test707 test708 test709 test71 test710 test711 test712 test713 test714 test715 test716 test717 test718 test719 test72 test720 test721 test722 test723 test724 test725 test726 test727 test728 test729 test73 test730 test731 test732 test733 test734 test735 test736 test737 test738 test739 test74 test740 test741 test742 test743 test744 test745 test746 test747 test748 test749 test75 test750 test751 test752 test753 test754 test755 test756 test757 test758 test759 test76 test760 test761 test762 test763 test764 test765 test766 test767 test768 test769 test77 test770 test771 test772 test773 test774 test775 test776 test777 test778 test779 test78 test780 test781 test782 test783 test784 test785 test786 test787 test788 test789 test79 test790 test791 test792 test793 test794 test795 test796 test797 test798 test799 test8 test80 test800 test801 test802 test803 test804 test805 test806 test807 test808 test809 test81 test810 test811 test812 test813 test814 test815 test816 test817 test818 test819 test82 test820 test821 test822 test823 test824 test825 test826 test827 test828 test829 test83 test830 test831 test832 test833 test834 test835 test836 test837 test838 test839 test84 test840 test841 test842 test843 test844 test845 test846 test847 test848 test849 test85 test850 test851 test852 test853 test854 test855 test856 test857 test858 test859 test86 test860 test861 test862 test863 test864 test865 test866 test867 test868 test869 test87 test870 test871 test872 test873 test874 test875 test876 test877 test878 test879 test88 test880 test881 test882 test883 test884 test885 test886 test887 test888 test889 test89 test890 test891 test892 test893 test894 test895 test896 test897 test898 test899 test9 test90 test900 test901 test902 test903 test904 test905 test906 test907 test908 test909 test91 test910 test911 test912 test913 test914 test915 test916 test917 test918 test919 test92 test920 test921 test922 test923 test924 test925 test926 test927 test928 test929 test93 test930 test931 test932 test933 test934 test935 test936 test937 test938 test939 test94 test940 test941 test942 test943 test944 test945 test946 test947 test948 test949 test95 test950 test951 test952 test953 test954 test955 test956 test957 test958 test959 test96 test960 test961 test962 test963 test964 test965 test966 test967 test968 test969 test97 test970 test971 test972 test973 test974 test975 test976 test977 test978 test979 test98 test980 test981 test982 test983 test984 test985 test986 test987 test988 test989 test99 test990 test991 test992 test993 test994 test995 test996 test997 test998 test999http
testenv
__init__.py caddy.py certs.py client.py curl.py dante.py dnsd.py env.py httpd.py nghttpx.py ports.py sshd.py vsftpd.py ws_echo_server.pylibtest
.gitignore CMakeLists.txt Makefile.am Makefile.inc cli_ftp_upload.c cli_h2_pausing.c cli_h2_serverpush.c cli_h2_upgrade_extreme.c cli_hx_download.c cli_hx_upload.c cli_tls_session_reuse.c cli_upload_pausing.c cli_ws_data.c cli_ws_pingpong.c first.c first.h lib1156.c lib1301.c lib1308.c lib1485.c lib1500.c lib1501.c lib1502.c lib1506.c lib1507.c lib1508.c lib1509.c lib1510.c lib1511.c lib1512.c lib1513.c lib1514.c lib1515.c lib1517.c lib1518.c lib1520.c lib1522.c lib1523.c lib1525.c lib1526.c lib1527.c lib1528.c lib1529.c lib1530.c lib1531.c lib1532.c lib1533.c lib1534.c lib1535.c lib1536.c lib1537.c lib1538.c lib1540.c lib1541.c lib1542.c lib1545.c lib1549.c lib1550.c lib1551.c lib1552.c lib1553.c lib1554.c lib1555.c lib1556.c lib1557.c lib1558.c lib1559.c lib1560.c lib1564.c lib1565.c lib1567.c lib1568.c lib1569.c lib1571.c lib1576.c lib1582.c lib1587.c lib1588.c lib1589.c lib1591.c lib1592.c lib1593.c lib1594.c lib1597.c lib1598.c lib1599.c lib1662.c lib1900.c lib1901.c lib1902.c lib1903.c lib1905.c lib1906.c lib1907.c lib1908.c lib1910.c lib1911.c lib1912.c lib1913.c lib1915.c lib1916.c lib1918.c lib1919.c lib1920.c lib1921.c lib1933.c lib1934.c lib1935.c lib1936.c lib1937.c lib1938.c lib1939.c lib1940.c lib1945.c lib1947.c lib1948.c lib1955.c lib1956.c lib1957.c lib1958.c lib1959.c lib1960.c lib1964.c lib1965.c lib1970.c lib1971.c lib1972.c lib1973.c lib1974.c lib1975.c lib1977.c lib1978.c lib2023.c lib2032.c lib2082.c lib2301.c lib2302.c lib2304.c lib2306.c lib2308.c lib2309.c lib2402.c lib2404.c lib2405.c lib2502.c lib2504.c lib2505.c lib2506.c lib2700.c lib3010.c lib3025.c lib3026.c lib3027.c lib3033.c lib3034.c lib3100.c lib3101.c lib3102.c lib3103.c lib3104.c lib3105.c lib3207.c lib3208.c lib500.c lib501.c lib502.c lib503.c lib504.c lib505.c lib506.c lib507.c lib508.c lib509.c lib510.c lib511.c lib512.c lib513.c lib514.c lib515.c lib516.c lib517.c lib518.c lib519.c lib520.c lib521.c lib523.c lib524.c lib525.c lib526.c lib530.c lib533.c lib536.c lib537.c lib539.c lib540.c lib541.c lib542.c lib543.c lib544.c lib547.c lib549.c lib552.c lib553.c lib554.c lib555.c lib556.c lib557.c lib558.c lib559.c lib560.c lib562.c lib564.c lib566.c lib567.c lib568.c lib569.c lib570.c lib571.c lib572.c lib573.c lib574.c lib575.c lib576.c lib578.c lib579.c lib582.c lib583.c lib586.c lib589.c lib590.c lib591.c lib597.c lib598.c lib599.c lib643.c lib650.c lib651.c lib652.c lib653.c lib654.c lib655.c lib658.c lib659.c lib661.c lib666.c lib667.c lib668.c lib670.c lib674.c lib676.c lib677.c lib678.c lib694.c lib695.c lib751.c lib753.c lib757.c lib758.c lib766.c memptr.c mk-lib1521.pl test1013.pl test1022.pl test307.pl test610.pl test613.pl testtrace.c testtrace.h testutil.c testutil.h unitcheck.hserver
.checksrc .gitignore CMakeLists.txt Makefile.am Makefile.inc dnsd.c first.c first.h getpart.c mqttd.c resolve.c rtspd.c sockfilt.c socksd.c sws.c tftpd.c util.ctunit
.gitignore CMakeLists.txt Makefile.am Makefile.inc README.md tool1394.c tool1604.c tool1621.c tool1622.c tool1623.c tool1720.cunit
.gitignore CMakeLists.txt Makefile.am Makefile.inc README.md unit1300.c unit1302.c unit1303.c unit1304.c unit1305.c unit1307.c unit1309.c unit1323.c unit1330.c unit1395.c unit1396.c unit1397.c unit1398.c unit1399.c unit1600.c unit1601.c unit1602.c unit1603.c unit1605.c unit1606.c unit1607.c unit1608.c unit1609.c unit1610.c unit1611.c unit1612.c unit1614.c unit1615.c unit1616.c unit1620.c unit1625.c unit1626.c unit1627.c unit1636.c unit1650.c unit1651.c unit1652.c unit1653.c unit1654.c unit1655.c unit1656.c unit1657.c unit1658.c unit1660.c unit1661.c unit1663.c unit1664.c unit1666.c unit1667.c unit1668.c unit1669.c unit1674.c unit1675.c unit1676.c unit1979.c unit1980.c unit2600.c unit2601.c unit2602.c unit2603.c unit2604.c unit2605.c unit3200.c unit3205.c unit3211.c unit3212.c unit3213.c unit3214.c unit3216.c unit3219.c unit3300.c unit3301.c unit3302.cexamples
.env config.ini crypto_test.lua env_test.lua fs_example.lua http_server.lua https_test.lua ini_example.lua json.lua log.lua path_fs_example.lua process_example.lua request_download.lua request_test.lua run_all.lua sqlite_example.lua sqlite_http_template.lua stash_test.lua template_test.lua timer.lua websocket.luainiparser
example
iniexample.c iniwrite.c parse.c twisted-errors.ini twisted-genhuge.py twisted-ofkey.ini twisted-ofval.ini twisted.initest
CMakeLists.txt test_dictionary.c test_iniparser.c unity-config.yml unity_config.hjinjac
libjinjac
src
CMakeLists.txt ast.c ast.h block_statement.c block_statement.h buffer.c buffer.h buildin.c buildin.h common.h convert.c convert.h flex_decl.h jfunction.c jfunction.h jinja_expression.l jinja_expression.y jinjac_parse.c jinjac_parse.h jinjac_stream.c jinjac_stream.h jlist.c jlist.h jobject.c jobject.h parameter.c parameter.h str_obj.c str_obj.h trace.c trace.htest
.gitignore CMakeLists.txt autotest.rb test_01.expected test_01.jinja test_01b.expected test_01b.jinja test_01c.expected test_01c.jinja test_01d.expected test_01d.jinja test_02.expected test_02.jinja test_03.expected test_03.jinja test_04.expected test_04.jinja test_05.expected test_05.jinja test_06.expected test_06.jinja test_07.expected test_07.jinja test_08.expected test_08.jinja test_08b.expected test_08b.jinja test_09.expected test_09.jinja test_10.expected test_10.jinja test_11.expected test_11.jinja test_12.expected test_12.jinja test_13.expected test_13.jinja test_14.expected test_14.jinja test_15.expected test_15.jinja test_16.expected test_16.jinja test_17.expected test_17.jinja test_18.expected test_18.jinja test_18b.expected test_18b.jinja test_18c.expected test_18c.jinja test_19.expected test_19.jinja test_19b.expected test_19b.jinja test_19c.expected test_19c.jinja test_19d.expected test_19d.jinja test_19e.expected test_19e.jinja test_19f.expected test_19f.jinja test_20.expected test_20.jinja test_21.expected test_21.jinja test_22.expected test_22.jinja test_22a.expected test_22a.jinja test_22b.expected test_22b.jinja test_23.expected test_23.jinja test_24.expected test_24.jinjalibev
Changes LICENSE Makefile Makefile.am Makefile.in README Symbols.ev Symbols.event aclocal.m4 autogen.sh compile config.guess config.h config.h.in config.status config.sub configure configure.ac depcomp ev++.h ev.3 ev.c ev.h ev.pod ev_epoll.c ev_kqueue.c ev_poll.c ev_port.c ev_select.c ev_vars.h ev_win32.c ev_wrap.h event.c event.h install-sh libev.m4 libtool ltmain.sh missing mkinstalldirs stamp-h1luajit
doc
bluequad-print.css bluequad.css contact.html ext_buffer.html ext_c_api.html ext_ffi.html ext_ffi_api.html ext_ffi_semantics.html ext_ffi_tutorial.html ext_jit.html ext_profiler.html extensions.html install.html luajit.html running.htmldynasm
dasm_arm.h dasm_arm.lua dasm_arm64.h dasm_arm64.lua dasm_mips.h dasm_mips.lua dasm_mips64.lua dasm_ppc.h dasm_ppc.lua dasm_proto.h dasm_x64.lua dasm_x86.h dasm_x86.lua dynasm.luasrc
host
.gitignore README buildvm.c buildvm.h buildvm_asm.c buildvm_fold.c buildvm_lib.c buildvm_libbc.h buildvm_peobj.c genlibbc.lua genminilua.lua genversion.lua minilua.cjit
.gitignore bc.lua bcsave.lua dis_arm.lua dis_arm64.lua dis_arm64be.lua dis_mips.lua dis_mips64.lua dis_mips64el.lua dis_mips64r6.lua dis_mips64r6el.lua dis_mipsel.lua dis_ppc.lua dis_x64.lua dis_x86.lua dump.lua p.lua v.lua zone.luawolfssl
.github
workflows
ada.yml arduino.yml async-examples.yml async.yml atecc608-sim.yml bind.yml cmake-autoconf.yml cmake.yml codespell.yml coverity-scan-fixes.yml cryptocb-only.yml curl.yml cyrus-sasl.yml disable-pk-algs.yml docker-Espressif.yml docker-OpenWrt.yml emnet-nonblock.yml fil-c.yml freertos-mem-track.yml gencertbuf.yml grpc.yml haproxy.yml hostap-vm.yml intelasm-c-fallback.yml ipmitool.yml jwt-cpp.yml krb5.yml libspdm.yml libssh2.yml libvncserver.yml linuxkm.yml macos-apple-native-cert-validation.yml mbedtls.sh mbedtls.yml membrowse-comment.yml membrowse-onboard.yml membrowse-report.yml memcached.sh memcached.yml mono.yml mosquitto.yml msmtp.yml msys2.yml multi-arch.yml multi-compiler.yml net-snmp.yml nginx.yml no-malloc.yml no-tls.yml nss.sh nss.yml ntp.yml ocsp.yml openldap.yml openssh.yml openssl-ech.yml opensslcoexist.yml openvpn.yml os-check.yml packaging.yml pam-ipmi.yml pq-all.yml pr-commit-check.yml psk.yml puf.yml python.yml rng-tools.yml rust-wrapper.yml se050-sim.yml smallStackSize.yml socat.yml softhsm.yml sssd.yml stm32-sim.yml stsafe-a120-sim.yml stunnel.yml symbol-prefixes.yml threadx.yml tls-anvil.yml trackmemory.yml watcomc.yml win-csharp-test.yml wolfCrypt-Wconversion.yml wolfboot-integration.yml wolfsm.yml xcode.yml zephyr-4.x.yml zephyr.ymlIDE
ARDUINO
Arduino_README_prepend.md README.md include.am keywords.txt library.properties.template wolfssl-arduino.cpp wolfssl-arduino.sh wolfssl.hECLIPSE
Espressif
ESP-IDF
examples
template
CMakeLists.txt Makefile README.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp8266wolfssl_benchmark
VisualGDB
wolfssl_benchmark_IDF_v4.4_ESP32.sln wolfssl_benchmark_IDF_v4.4_ESP32.vgdbproj wolfssl_benchmark_IDF_v5_ESP32.sln wolfssl_benchmark_IDF_v5_ESP32.vgdbproj wolfssl_benchmark_IDF_v5_ESP32C3.sln wolfssl_benchmark_IDF_v5_ESP32C3.vgdbproj wolfssl_benchmark_IDF_v5_ESP32S3.sln wolfssl_benchmark_IDF_v5_ESP32S3.vgdbprojwolfssl_client
CMakeLists.txt Makefile README.md README_server_sm.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp32c2 sdkconfig.defaults.esp8266 wolfssl_client_ESP8266.vgdbprojwolfssl_server
CMakeLists.txt Makefile README.md README_server_sm.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp32c2 sdkconfig.defaults.esp8266 wolfssl_server_ESP8266.vgdbprojwolfssl_test
VisualGDB
wolfssl_test-IDF_v5_ESP32.sln wolfssl_test-IDF_v5_ESP32.vgdbproj wolfssl_test-IDF_v5_ESP32C3.sln wolfssl_test-IDF_v5_ESP32C3.vgdbproj wolfssl_test-IDF_v5_ESP32C6.sln wolfssl_test-IDF_v5_ESP32C6.vgdbproj wolfssl_test_IDF_v5_ESP32S3.sln wolfssl_test_IDF_v5_ESP32S3.vgdbprojGCC-ARM
Makefile Makefile.bench Makefile.client Makefile.common Makefile.server Makefile.static Makefile.test README.md include.am linker.ld linker_fips.ldIAR-EWARM
embOS
SAMV71_XULT
embOS_SAMV71_XULT_user_settings
user_settings.h user_settings_simple_example.h user_settings_verbose_example.hembOS_wolfcrypt_benchmark_SAMV71_XULT
README_wolfcrypt_benchmark wolfcrypt_benchmark.ewd wolfcrypt_benchmark.ewpINTIME-RTOS
Makefile README.md include.am libwolfssl.c libwolfssl.vcxproj user_settings.h wolfExamples.c wolfExamples.h wolfExamples.sln wolfExamples.vcxproj wolfssl-lib.sln wolfssl-lib.vcxprojMQX
Makefile README-jp.md README.md client-tls.c include.am server-tls.c user_config.h user_settings.hMSVS-2019-AZSPHERE
wolfssl_new_azsphere
.gitignore CMakeLists.txt CMakeSettings.json app_manifest.json applibs_versions.h launch.vs.json main.cNETOS
Makefile.wolfcrypt.inc README.md include.am user_settings.h user_settings.h-cert2425 user_settings.h-cert3389 wolfssl_netos_custom.cPlatformIO
examples
wolfssl_benchmark
CMakeLists.txt README.md platformio.ini sdkconfig.defaults wolfssl_benchmark.code-workspaceROWLEY-CROSSWORKS-ARM
Kinetis_FlashPlacement.xml README.md arm_startup.c benchmark_main.c hw.h include.am kinetis_hw.c retarget.c test_main.c user_settings.h wolfssl.hzp wolfssl_ltc.hzpRenesas
e2studio
RA6M3
README.md README_APRA6M_en.md README_APRA6M_jp.md include.amRX72N
EnvisionKit
Simple
README_EN.md README_JP.mdwolfssl_demo
key_data.c key_data.h user_settings.h wolfssl_demo.c wolfssl_demo.h wolfssl_tsip_unit_test.cSTM32Cube
README.md STM32_Benchmarks.md default_conf.ftl include.am main.c wolfssl_example.c wolfssl_example.hWIN
README.txt include.am test.vcxproj user_settings.h user_settings_dtls.h wolfssl-fips.sln wolfssl-fips.vcxprojWIN-SRTP-KDF-140-3
README.txt include.am resource.h test.vcxproj user_settings.h wolfssl-fips.rc wolfssl-fips.sln wolfssl-fips.vcxprojWIN10
README.txt include.am resource.h test.vcxproj user_settings.h wolfssl-fips.rc wolfssl-fips.sln wolfssl-fips.vcxprojXCODE
Benchmark
include.amXilinxSDK
README.md bench.sh combine.sh eclipse_formatter_profile.xml graph.sh include.am user_settings.h wolfssl_example.capple-universal
wolfssl-multiplatform
iotsafe
Makefile README.md ca-cert.c devices.c devices.h include.am main.c memory-tls.c startup.c target.ld user_settings.hmynewt
README.md apps.wolfcrypttest.pkg.yml crypto.wolfssl.pkg.yml crypto.wolfssl.syscfg.yml include.am setup.shcerts
1024
ca-cert.der ca-cert.pem ca-key.der ca-key.pem client-cert.der client-cert.pem client-key.der client-key.pem client-keyPub.der dh1024.der dh1024.pem dsa-pub-1024.pem dsa1024.der dsa1024.pem include.am rsa1024.der server-cert.der server-cert.pem server-key.der server-key.pemcrl
extra-crls
ca-int-cert-revoked.pem claim-root.pem crl_critical_entry.pem crlnum_57oct.pem crlnum_64oct.pem general-server-crl.pem large_crlnum.pem large_crlnum2.pemdilithium
bench_dilithium_level2_key.der bench_dilithium_level3_key.der bench_dilithium_level5_key.der include.amecc
bp256r1-key.der bp256r1-key.pem ca-secp256k1-cert.pem ca-secp256k1-key.pem client-bp256r1-cert.der client-bp256r1-cert.pem client-secp256k1-cert.der client-secp256k1-cert.pem genecc.sh include.am secp256k1-key.der secp256k1-key.pem secp256k1-param.pem secp256k1-privkey.der secp256k1-privkey.pem server-bp256r1-cert.der server-bp256r1-cert.pem server-secp256k1-cert.der server-secp256k1-cert.pem server2-secp256k1-cert.der server2-secp256k1-cert.pem wolfssl.cnf wolfssl_384.cnfed25519
ca-ed25519-key.der ca-ed25519-key.pem ca-ed25519-priv.der ca-ed25519-priv.pem ca-ed25519.der ca-ed25519.pem client-ed25519-key.der client-ed25519-key.pem client-ed25519-priv.der client-ed25519-priv.pem client-ed25519.der client-ed25519.pem eddsa-ed25519.der eddsa-ed25519.pem gen-ed25519-certs.sh gen-ed25519-keys.sh gen-ed25519.sh include.am root-ed25519-key.der root-ed25519-key.pem root-ed25519-priv.der root-ed25519-priv.pem root-ed25519.der root-ed25519.pem server-ed25519-cert.pem server-ed25519-key.der server-ed25519-key.pem server-ed25519-priv.der server-ed25519-priv.pem server-ed25519.der server-ed25519.pemed448
ca-ed448-key.der ca-ed448-key.pem ca-ed448-priv.der ca-ed448-priv.pem ca-ed448.der ca-ed448.pem client-ed448-key.der client-ed448-key.pem client-ed448-priv.der client-ed448-priv.pem client-ed448.der client-ed448.pem gen-ed448-certs.sh gen-ed448-keys.sh include.am root-ed448-key.der root-ed448-key.pem root-ed448-priv.der root-ed448-priv.pem root-ed448.der root-ed448.pem server-ed448-cert.pem server-ed448-key.der server-ed448-key.pem server-ed448-priv.der server-ed448-priv.pem server-ed448.der server-ed448.pemexternal
DigiCertGlobalRootCA.pem README.txt ca-digicert-ev.pem ca-globalsign-root.pem ca-google-root.pem ca_collection.pem include.amintermediate
ca_false_intermediate
gentestcert.sh int_ca.key server.key test_ca.key test_ca.pem test_int_not_cacert.pem test_sign_bynoca_srv.pem wolfssl_base.conf wolfssl_srv.conflms
bc_hss_L2_H5_W8_root.der bc_hss_L3_H5_W4_root.der bc_lms_chain_ca.der bc_lms_chain_leaf.der bc_lms_native_bc_root.der bc_lms_sha256_h10_w8_root.der bc_lms_sha256_h5_w4_root.der include.ammldsa
README.txt include.am mldsa44-cert.der mldsa44-cert.pem mldsa44-key.pem mldsa44_bare-priv.der mldsa44_bare-seed.der mldsa44_oqskeypair.der mldsa44_priv-only.der mldsa44_pub-spki.der mldsa44_seed-only.der mldsa44_seed-priv.der mldsa65-cert.der mldsa65-cert.pem mldsa65-key.pem mldsa65_bare-priv.der mldsa65_bare-seed.der mldsa65_oqskeypair.der mldsa65_priv-only.der mldsa65_pub-spki.der mldsa65_seed-only.der mldsa65_seed-priv.der mldsa87-cert.der mldsa87-cert.pem mldsa87-key.pem mldsa87_bare-priv.der mldsa87_bare-seed.der mldsa87_oqskeypair.der mldsa87_priv-only.der mldsa87_pub-spki.der mldsa87_seed-only.der mldsa87_seed-priv.derocsp
imposter-root-ca-cert.der imposter-root-ca-cert.pem imposter-root-ca-key.der imposter-root-ca-key.pem include.am index-ca-and-intermediate-cas.txt index-ca-and-intermediate-cas.txt.attr index-intermediate1-ca-issued-certs.txt index-intermediate1-ca-issued-certs.txt.attr index-intermediate2-ca-issued-certs.txt index-intermediate2-ca-issued-certs.txt.attr index-intermediate3-ca-issued-certs.txt index-intermediate3-ca-issued-certs.txt.attr intermediate1-ca-cert.der intermediate1-ca-cert.pem intermediate1-ca-key.der intermediate1-ca-key.pem intermediate2-ca-cert.der intermediate2-ca-cert.pem intermediate2-ca-key.der intermediate2-ca-key.pem intermediate3-ca-cert.der intermediate3-ca-cert.pem intermediate3-ca-key.der intermediate3-ca-key.pem ocsp-responder-cert.der ocsp-responder-cert.pem ocsp-responder-key.der ocsp-responder-key.pem openssl.cnf renewcerts-for-test.sh renewcerts.sh root-ca-cert.der root-ca-cert.pem root-ca-crl.pem root-ca-key.der root-ca-key.pem server1-cert.der server1-cert.pem server1-chain-noroot.pem server1-key.der server1-key.pem server2-cert.der server2-cert.pem server2-key.der server2-key.pem server3-cert.der server3-cert.pem server3-key.der server3-key.pem server4-cert.der server4-cert.pem server4-key.der server4-key.pem server5-cert.der server5-cert.pem server5-key.der server5-key.pem test-leaf-response.der test-multi-response.der test-response-nointern.der test-response-rsapss.der test-response.derp521
ca-p521-key.der ca-p521-key.pem ca-p521-priv.der ca-p521-priv.pem ca-p521.der ca-p521.pem client-p521-key.der client-p521-key.pem client-p521-priv.der client-p521-priv.pem client-p521.der client-p521.pem gen-p521-certs.sh gen-p521-keys.sh include.am root-p521-key.der root-p521-key.pem root-p521-priv.der root-p521-priv.pem root-p521.der root-p521.pem server-p521-cert.pem server-p521-key.der server-p521-key.pem server-p521-priv.der server-p521-priv.pem server-p521.der server-p521.pemrpk
client-cert-rpk.der client-ecc-cert-rpk.der include.am server-cert-rpk.der server-ecc-cert-rpk.derrsapss
ca-3072-rsapss-key.der ca-3072-rsapss-key.pem ca-3072-rsapss-priv.der ca-3072-rsapss-priv.pem ca-3072-rsapss.der ca-3072-rsapss.pem ca-rsapss-key.der ca-rsapss-key.pem ca-rsapss-priv.der ca-rsapss-priv.pem ca-rsapss.der ca-rsapss.pem client-3072-rsapss-key.der client-3072-rsapss-key.pem client-3072-rsapss-priv.der client-3072-rsapss-priv.pem client-3072-rsapss.der client-3072-rsapss.pem client-rsapss-key.der client-rsapss-key.pem client-rsapss-priv.der client-rsapss-priv.pem client-rsapss.der client-rsapss.pem gen-rsapss-keys.sh include.am renew-rsapss-certs.sh root-3072-rsapss-key.der root-3072-rsapss-key.pem root-3072-rsapss-priv.der root-3072-rsapss-priv.pem root-3072-rsapss.der root-3072-rsapss.pem root-rsapss-key.der root-rsapss-key.pem root-rsapss-priv.der root-rsapss-priv.pem root-rsapss.der root-rsapss.pem server-3072-rsapss-cert.pem server-3072-rsapss-key.der server-3072-rsapss-key.pem server-3072-rsapss-priv.der server-3072-rsapss-priv.pem server-3072-rsapss.der server-3072-rsapss.pem server-mix-rsapss-cert.pem server-rsapss-cert.pem server-rsapss-key.der server-rsapss-key.pem server-rsapss-priv.der server-rsapss-priv.pem server-rsapss.der server-rsapss.pemslhdsa
bench_slhdsa_sha2_128f_key.der bench_slhdsa_sha2_128s_key.der bench_slhdsa_sha2_192f_key.der bench_slhdsa_sha2_192s_key.der bench_slhdsa_sha2_256f_key.der bench_slhdsa_sha2_256s_key.der bench_slhdsa_shake128f_key.der bench_slhdsa_shake128s_key.der bench_slhdsa_shake192f_key.der bench_slhdsa_shake192s_key.der bench_slhdsa_shake256f_key.der bench_slhdsa_shake256s_key.der client-mldsa44-priv.pem client-mldsa44-sha2.der client-mldsa44-sha2.pem client-mldsa44-shake.der client-mldsa44-shake.pem gen-slhdsa-mldsa-certs.sh include.am root-slhdsa-sha2-128s-priv.der root-slhdsa-sha2-128s-priv.pem root-slhdsa-sha2-128s.der root-slhdsa-sha2-128s.pem root-slhdsa-shake-128s-priv.der root-slhdsa-shake-128s-priv.pem root-slhdsa-shake-128s.der root-slhdsa-shake-128s.pem server-mldsa44-priv.pem server-mldsa44-sha2.der server-mldsa44-sha2.pem server-mldsa44-shake.der server-mldsa44-shake.pemsm2
ca-sm2-key.der ca-sm2-key.pem ca-sm2-priv.der ca-sm2-priv.pem ca-sm2.der ca-sm2.pem client-sm2-key.der client-sm2-key.pem client-sm2-priv.der client-sm2-priv.pem client-sm2.der client-sm2.pem fix_sm2_spki.py gen-sm2-certs.sh gen-sm2-keys.sh include.am root-sm2-key.der root-sm2-key.pem root-sm2-priv.der root-sm2-priv.pem root-sm2.der root-sm2.pem self-sm2-cert.pem self-sm2-key.pem self-sm2-priv.pem server-sm2-cert.der server-sm2-cert.pem server-sm2-key.der server-sm2-key.pem server-sm2-priv.der server-sm2-priv.pem server-sm2.der server-sm2.pemstatickeys
dh-ffdhe2048-params.pem dh-ffdhe2048-pub.der dh-ffdhe2048-pub.pem dh-ffdhe2048.der dh-ffdhe2048.pem ecc-secp256r1.der ecc-secp256r1.pem gen-static.sh include.am x25519-pub.der x25519-pub.pem x25519.der x25519.pemtest
catalog.txt cert-bad-neg-int.der cert-bad-oid.der cert-bad-utf8.der cert-ext-ia.cfg cert-ext-ia.der cert-ext-ia.pem cert-ext-joi.cfg cert-ext-joi.der cert-ext-joi.pem cert-ext-mnc.der cert-ext-multiple.cfg cert-ext-multiple.der cert-ext-multiple.pem cert-ext-nc-combined.der cert-ext-nc-combined.pem cert-ext-nc.cfg cert-ext-nc.der cert-ext-nc.pem cert-ext-ncdns.der cert-ext-ncdns.pem cert-ext-ncip.der cert-ext-ncip.pem cert-ext-ncmixed.der cert-ext-ncmulti.der cert-ext-ncmulti.pem cert-ext-ncrid.der cert-ext-ncrid.pem cert-ext-nct.cfg cert-ext-nct.der cert-ext-nct.pem cert-ext-ndir-exc.cfg cert-ext-ndir-exc.der cert-ext-ndir-exc.pem cert-ext-ndir.cfg cert-ext-ndir.der cert-ext-ndir.pem cert-ext-ns.der cert-over-max-altnames.cfg cert-over-max-altnames.der cert-over-max-altnames.pem cert-over-max-nc.cfg cert-over-max-nc.der cert-over-max-nc.pem client-ecc-cert-ski.hex cn-ip-literal.der cn-ip-wildcard.der crit-cert.pem crit-key.pem dh1024.der dh1024.pem dh512.der dh512.pem digsigku.pem encrypteddata.msg gen-badsig.sh gen-ext-certs.sh gen-testcerts.sh include.am kari-keyid-cms.msg ktri-keyid-cms.msg ossl-trusted-cert.pem server-badaltname.der server-badaltname.pem server-badaltnull.der server-badaltnull.pem server-badcn.der server-badcn.pem server-badcnnull.der server-badcnnull.pem server-cert-ecc-badsig.der server-cert-ecc-badsig.pem server-cert-rsa-badsig.der server-cert-rsa-badsig.pem server-duplicate-policy.pem server-garbage.der server-garbage.pem server-goodalt.der server-goodalt.pem server-goodaltwild.der server-goodaltwild.pem server-goodcn.der server-goodcn.pem server-goodcnwild.der server-goodcnwild.pem server-localhost.der server-localhost.pem smime-test-canon.p7s smime-test-multipart-badsig.p7s smime-test-multipart.p7s smime-test.p7stest-pathlen
assemble-chains.sh chainA-ICA1-key.pem chainA-ICA1-pathlen0.pem chainA-assembled.pem chainA-entity-key.pem chainA-entity.pem chainB-ICA1-key.pem chainB-ICA1-pathlen0.pem chainB-ICA2-key.pem chainB-ICA2-pathlen1.pem chainB-assembled.pem chainB-entity-key.pem chainB-entity.pem chainC-ICA1-key.pem chainC-ICA1-pathlen1.pem chainC-assembled.pem chainC-entity-key.pem chainC-entity.pem chainD-ICA1-key.pem chainD-ICA1-pathlen127.pem chainD-assembled.pem chainD-entity-key.pem chainD-entity.pem chainE-ICA1-key.pem chainE-ICA1-pathlen128.pem chainE-assembled.pem chainE-entity-key.pem chainE-entity.pem chainF-ICA1-key.pem chainF-ICA1-pathlen1.pem chainF-ICA2-key.pem chainF-ICA2-pathlen0.pem chainF-assembled.pem chainF-entity-key.pem chainF-entity.pem chainG-ICA1-key.pem chainG-ICA1-pathlen0.pem chainG-ICA2-key.pem chainG-ICA2-pathlen1.pem chainG-ICA3-key.pem chainG-ICA3-pathlen99.pem chainG-ICA4-key.pem chainG-ICA4-pathlen5.pem chainG-ICA5-key.pem chainG-ICA5-pathlen20.pem chainG-ICA6-key.pem chainG-ICA6-pathlen10.pem chainG-ICA7-key.pem chainG-ICA7-pathlen100.pem chainG-assembled.pem chainG-entity-key.pem chainG-entity.pem chainH-ICA1-key.pem chainH-ICA1-pathlen0.pem chainH-ICA2-key.pem chainH-ICA2-pathlen2.pem chainH-ICA3-key.pem chainH-ICA3-pathlen2.pem chainH-ICA4-key.pem chainH-ICA4-pathlen2.pem chainH-assembled.pem chainH-entity-key.pem chainH-entity.pem chainI-ICA1-key.pem chainI-ICA1-no_pathlen.pem chainI-ICA2-key.pem chainI-ICA2-no_pathlen.pem chainI-ICA3-key.pem chainI-ICA3-pathlen2.pem chainI-assembled.pem chainI-entity-key.pem chainI-entity.pem chainJ-ICA1-key.pem chainJ-ICA1-no_pathlen.pem chainJ-ICA2-key.pem chainJ-ICA2-no_pathlen.pem chainJ-ICA3-key.pem chainJ-ICA3-no_pathlen.pem chainJ-ICA4-key.pem chainJ-ICA4-pathlen2.pem chainJ-assembled.pem chainJ-entity-key.pem chainJ-entity.pem include.am refreshkeys.shtest-serial0
ee_normal.pem ee_serial0.pem generate_certs.sh include.am intermediate_serial0.pem root_serial0.pem root_serial0_key.pem selfsigned_nonca_serial0.pemxmss
bc_xmss_chain_ca.der bc_xmss_chain_leaf.der bc_xmss_sha2_10_256_root.der bc_xmss_sha2_16_256_root.der bc_xmssmt_sha2_20_2_256_root.der bc_xmssmt_sha2_20_4_256_root.der bc_xmssmt_sha2_40_8_256_root.der include.amcmake
Config.cmake.in README.md config.in functions.cmake include.am options.h.in wolfssl-config-version.cmake.in wolfssl-targets.cmake.indebian
changelog.in control.in copyright include.am libwolfssl-dev.install libwolfssl.install rules.indoc
dox_comments
header_files
aes.h arc4.h ascon.h asn.h asn_public.h blake2.h bn.h camellia.h chacha.h chacha20_poly1305.h cmac.h coding.h compress.h cryptocb.h curve25519.h curve448.h des3.h dh.h doxygen_groups.h doxygen_pages.h dsa.h ecc.h eccsi.h ed25519.h ed448.h error-crypt.h evp.h hash.h hmac.h iotsafe.h kdf.h logging.h md2.h md4.h md5.h memory.h ocsp.h pem.h pkcs11.h pkcs7.h poly1305.h psa.h puf.h pwdbased.h quic.h random.h ripemd.h rsa.h sakke.h sha.h sha256.h sha3.h sha512.h signature.h siphash.h srp.h ssl.h tfm.h types.h wc_encrypt.h wc_port.h wc_she.h wc_slhdsa.h wolfio.hheader_files-ja
aes.h arc4.h ascon.h asn.h asn_public.h blake2.h bn.h camellia.h chacha.h chacha20_poly1305.h cmac.h coding.h compress.h cryptocb.h curve25519.h curve448.h des3.h dh.h doxygen_groups.h doxygen_pages.h dsa.h ecc.h eccsi.h ed25519.h ed448.h error-crypt.h evp.h hash.h hmac.h iotsafe.h kdf.h logging.h md2.h md4.h md5.h memory.h ocsp.h pem.h pkcs11.h pkcs7.h poly1305.h psa.h pwdbased.h quic.h random.h ripemd.h rsa.h sakke.h sha.h sha256.h sha3.h sha512.h signature.h siphash.h srp.h ssl.h tfm.h types.h wc_encrypt.h wc_port.h wolfio.hexamples
async
Makefile README.md async_client.c async_server.c async_tls.c async_tls.h include.am user_settings.hconfigs
README.md include.am user_settings_EBSnet.h user_settings_all.h user_settings_arduino.h user_settings_baremetal.h user_settings_ca.h user_settings_curve25519nonblock.h user_settings_dtls13.h user_settings_eccnonblock.h user_settings_espressif.h user_settings_fipsv2.h user_settings_fipsv5.h user_settings_min_ecc.h user_settings_openssl_compat.h user_settings_pkcs7.h user_settings_platformio.h user_settings_pq.h user_settings_rsa_only.h user_settings_stm32.h user_settings_template.h user_settings_tls12.h user_settings_tls13.h user_settings_wolfboot_keytools.h user_settings_wolfssh.h user_settings_wolftpm.hechoclient
echoclient.c echoclient.h echoclient.sln echoclient.vcproj echoclient.vcxproj include.am quitlinuxkm
Kbuild Makefile README.md get_thread_size.c include.am linuxkm-fips-hash-wrapper.sh linuxkm-fips-hash.c linuxkm_memory.c linuxkm_memory.h linuxkm_wc_port.h lkcapi_aes_glue.c lkcapi_dh_glue.c lkcapi_ecdh_glue.c lkcapi_ecdsa_glue.c lkcapi_glue.c lkcapi_rsa_glue.c lkcapi_sha_glue.c module_exports.c.template module_hooks.c pie_redirect_table.c wolfcrypt.lds x86_vector_register_glue.cm4
ax_add_am_macro.m4 ax_am_jobserver.m4 ax_am_macros.m4 ax_append_compile_flags.m4 ax_append_flag.m4 ax_append_link_flags.m4 ax_append_to_file.m4 ax_atomic.m4 ax_bsdkm.m4 ax_check_compile_flag.m4 ax_check_link_flag.m4 ax_compiler_version.m4 ax_count_cpus.m4 ax_create_generic_config.m4 ax_debug.m4 ax_file_escapes.m4 ax_harden_compiler_flags.m4 ax_linuxkm.m4 ax_print_to_file.m4 ax_pthread.m4 ax_require_defined.m4 ax_tls.m4 ax_vcs_checkout.m4 hexversion.m4 lib_socket_nsl.m4 visibility.m4mqx
wolfcrypt_benchmark
ReferencedRSESystems.xml wolfcrypt_benchmark_twrk70f120m_Int_Flash_DDRData_Debug_PnE_U-MultiLink.launch wolfcrypt_benchmark_twrk70f120m_Int_Flash_DDRData_Release_PnE_U-MultiLink.launch wolfcrypt_benchmark_twrk70f120m_Int_Flash_SramData_Debug_JTrace.jlink wolfcrypt_benchmark_twrk70f120m_Int_Flash_SramData_Debug_JTrace.launch wolfcrypt_benchmark_twrk70f120m_Int_Flash_SramData_Debug_PnE_U-MultiLink.launch wolfcrypt_benchmark_twrk70f120m_Int_Flash_SramData_Release_PnE_U-MultiLink.launchwolfcrypt_test
ReferencedRSESystems.xml wolfcrypt_test_twrk70f120m_Int_Flash_DDRData_Debug_PnE_U-MultiLink.launch wolfcrypt_test_twrk70f120m_Int_Flash_DDRData_Release_PnE_U-MultiLink.launch wolfcrypt_test_twrk70f120m_Int_Flash_SramData_Debug_JTrace.jlink wolfcrypt_test_twrk70f120m_Int_Flash_SramData_Debug_JTrace.launch wolfcrypt_test_twrk70f120m_Int_Flash_SramData_Debug_PnE_U-MultiLink.launch wolfcrypt_test_twrk70f120m_Int_Flash_SramData_Release_PnE_U-MultiLink.launchwolfssl_client
ReferencedRSESystems.xml wolfssl_client_twrk70f120m_Int_Flash_DDRData_Debug_PnE_U-MultiLink.launch wolfssl_client_twrk70f120m_Int_Flash_DDRData_Release_PnE_U-MultiLink.launch wolfssl_client_twrk70f120m_Int_Flash_SramData_Debug_JTrace.jlink wolfssl_client_twrk70f120m_Int_Flash_SramData_Debug_JTrace.launch wolfssl_client_twrk70f120m_Int_Flash_SramData_Debug_PnE_U-MultiLink.launch wolfssl_client_twrk70f120m_Int_Flash_SramData_Release_PnE_U-MultiLink.launchscripts
aria-cmake-build-test.sh asn1_oid_sum.pl benchmark.test benchmark_compare.sh cleanup_testfiles.sh crl-gen-openssl.test crl-revoked.test dertoc.pl dtls.test dtlscid.test external.test google.test include.am makedistsmall.sh memtest.sh ocsp-responder-openssl-interop.test ocsp-stapling-with-ca-as-responder.test ocsp-stapling-with-wolfssl-responder.test ocsp-stapling.test ocsp-stapling2.test ocsp-stapling_tls13multi.test ocsp.test openssl.test openssl_srtp.test pem.test ping.test pkcallbacks.test psk.test resume.test rsapss.test sniffer-gen.sh sniffer-ipv6.pcap sniffer-static-rsa.pcap sniffer-testsuite.test sniffer-tls12-keylog.out sniffer-tls12-keylog.pcap sniffer-tls12-keylog.sslkeylog sniffer-tls13-dh-resume.pcap sniffer-tls13-dh.pcap sniffer-tls13-ecc-resume.pcap sniffer-tls13-ecc.pcap sniffer-tls13-hrr.pcap sniffer-tls13-keylog.out sniffer-tls13-keylog.pcap sniffer-tls13-keylog.sslkeylog sniffer-tls13-x25519-resume.pcap sniffer-tls13-x25519.pcap stm32l4-v4_0_1_build.sh tls13.test trusted_peer.test unit.test.in user_settings_asm.shsrc
bio.c conf.c crl.c dtls.c dtls13.c include.am internal.c keys.c ocsp.c pk.c pk_ec.c pk_rsa.c quic.c sniffer.c ssl.c ssl_api_cert.c ssl_api_crl_ocsp.c ssl_api_pk.c ssl_asn1.c ssl_bn.c ssl_certman.c ssl_crypto.c ssl_ech.c ssl_load.c ssl_misc.c ssl_p7p12.c ssl_sess.c ssl_sk.c tls.c tls13.c wolfio.c x509.c x509_str.ctests
api
api.h api_decl.h create_ocsp_test_blobs.py include.am test_aes.c test_aes.h test_arc4.c test_arc4.h test_ascon.c test_ascon.h test_ascon_kats.h test_asn.c test_asn.h test_blake2.c test_blake2.h test_camellia.c test_camellia.h test_certman.c test_certman.h test_chacha.c test_chacha.h test_chacha20_poly1305.c test_chacha20_poly1305.h test_cmac.c test_cmac.h test_curve25519.c test_curve25519.h test_curve448.c test_curve448.h test_des3.c test_des3.h test_dh.c test_dh.h test_digest.h test_dsa.c test_dsa.h test_dtls.c test_dtls.h test_ecc.c test_ecc.h test_ed25519.c test_ed25519.h test_ed448.c test_ed448.h test_evp.c test_evp.h test_evp_cipher.c test_evp_cipher.h test_evp_digest.c test_evp_digest.h test_evp_pkey.c test_evp_pkey.h test_hash.c test_hash.h test_hmac.c test_hmac.h test_md2.c test_md2.h test_md4.c test_md4.h test_md5.c test_md5.h test_mldsa.c test_mldsa.h test_mlkem.c test_mlkem.h test_ocsp.c test_ocsp.h test_ocsp_test_blobs.h test_ossl_asn1.c test_ossl_asn1.h test_ossl_bio.c test_ossl_bio.h test_ossl_bn.c test_ossl_bn.h test_ossl_cipher.c test_ossl_cipher.h test_ossl_dgst.c test_ossl_dgst.h test_ossl_dh.c test_ossl_dh.h test_ossl_dsa.c test_ossl_dsa.h test_ossl_ec.c test_ossl_ec.h test_ossl_ecx.c test_ossl_ecx.h test_ossl_mac.c test_ossl_mac.h test_ossl_obj.c test_ossl_obj.h test_ossl_p7p12.c test_ossl_p7p12.h test_ossl_pem.c test_ossl_pem.h test_ossl_rand.c test_ossl_rand.h test_ossl_rsa.c test_ossl_rsa.h test_ossl_sk.c test_ossl_sk.h test_ossl_x509.c test_ossl_x509.h test_ossl_x509_acert.c test_ossl_x509_acert.h test_ossl_x509_crypto.c test_ossl_x509_crypto.h test_ossl_x509_ext.c test_ossl_x509_ext.h test_ossl_x509_info.c test_ossl_x509_info.h test_ossl_x509_io.c test_ossl_x509_io.h test_ossl_x509_lu.c test_ossl_x509_lu.h test_ossl_x509_name.c test_ossl_x509_name.h test_ossl_x509_pk.c test_ossl_x509_pk.h test_ossl_x509_str.c test_ossl_x509_str.h test_ossl_x509_vp.c test_ossl_x509_vp.h test_pkcs12.c test_pkcs12.h test_pkcs7.c test_pkcs7.h test_poly1305.c test_poly1305.h test_random.c test_random.h test_rc2.c test_rc2.h test_ripemd.c test_ripemd.h test_rsa.c test_rsa.h test_sha.c test_sha.h test_sha256.c test_sha256.h test_sha3.c test_sha3.h test_sha512.c test_sha512.h test_she.c test_she.h test_signature.c test_signature.h test_slhdsa.c test_slhdsa.h test_sm2.c test_sm2.h test_sm3.c test_sm3.h test_sm4.c test_sm4.h test_tls.c test_tls.h test_tls13.c test_tls13.h test_tls_ext.c test_tls_ext.h test_wc_encrypt.c test_wc_encrypt.h test_wolfmath.c test_wolfmath.h test_x509.c test_x509.hwolfcrypt
benchmark
README.md benchmark-VS2022.sln benchmark-VS2022.vcxproj benchmark-VS2022.vcxproj.user benchmark.c benchmark.h benchmark.sln benchmark.vcproj benchmark.vcxproj include.amsrc
port
Espressif
esp_crt_bundle
README.md cacrt_all.pem cacrt_deprecated.pem cacrt_local.pem esp_crt_bundle.c gen_crt_bundle.py pio_install_cryptography.pyRenesas
README.md renesas_common.c renesas_fspsm_aes.c renesas_fspsm_rsa.c renesas_fspsm_sha.c renesas_fspsm_util.c renesas_rx64_hw_sha.c renesas_rx64_hw_util.c renesas_tsip_aes.c renesas_tsip_rsa.c renesas_tsip_sha.c renesas_tsip_util.carm
armv8-32-aes-asm.S armv8-32-aes-asm_c.c armv8-32-chacha-asm.S armv8-32-chacha-asm_c.c armv8-32-curve25519.S armv8-32-curve25519_c.c armv8-32-mlkem-asm.S armv8-32-mlkem-asm_c.c armv8-32-poly1305-asm.S armv8-32-poly1305-asm_c.c armv8-32-sha256-asm.S armv8-32-sha256-asm_c.c armv8-32-sha3-asm.S armv8-32-sha3-asm_c.c armv8-32-sha512-asm.S armv8-32-sha512-asm_c.c armv8-aes-asm.S armv8-aes-asm_c.c armv8-aes.c armv8-chacha-asm.S armv8-chacha-asm_c.c armv8-curve25519.S armv8-curve25519_c.c armv8-mlkem-asm.S armv8-mlkem-asm_c.c armv8-poly1305-asm.S armv8-poly1305-asm_c.c armv8-sha256-asm.S armv8-sha256-asm_c.c armv8-sha256.c armv8-sha3-asm.S armv8-sha3-asm_c.c armv8-sha512-asm.S armv8-sha512-asm_c.c armv8-sha512.c cryptoCell.c cryptoCellHash.c thumb2-aes-asm.S thumb2-aes-asm_c.c thumb2-chacha-asm.S thumb2-chacha-asm_c.c thumb2-curve25519.S thumb2-curve25519_c.c thumb2-mlkem-asm.S thumb2-mlkem-asm_c.c thumb2-poly1305-asm.S thumb2-poly1305-asm_c.c thumb2-sha256-asm.S thumb2-sha256-asm_c.c thumb2-sha3-asm.S thumb2-sha3-asm_c.c thumb2-sha512-asm.S thumb2-sha512-asm_c.ccaam
README.md caam_aes.c caam_doc.pdf caam_driver.c caam_error.c caam_integrity.c caam_qnx.c caam_sha.c wolfcaam_aes.c wolfcaam_cmac.c wolfcaam_ecdsa.c wolfcaam_fsl_nxp.c wolfcaam_hash.c wolfcaam_hmac.c wolfcaam_init.c wolfcaam_qnx.c wolfcaam_rsa.c wolfcaam_seco.c wolfcaam_x25519.cdevcrypto
README.md devcrypto_aes.c devcrypto_ecdsa.c devcrypto_hash.c devcrypto_hmac.c devcrypto_rsa.c devcrypto_x25519.c wc_devcrypto.criscv
riscv-64-aes.c riscv-64-chacha.c riscv-64-poly1305.c riscv-64-sha256.c riscv-64-sha3.c riscv-64-sha512.cwolfssl
openssl
aes.h asn1.h asn1t.h bio.h bn.h buffer.h camellia.h cmac.h cms.h compat_types.h conf.h crypto.h des.h dh.h dsa.h ec.h ec25519.h ec448.h ecdh.h ecdsa.h ed25519.h ed448.h engine.h err.h evp.h fips_rand.h hmac.h include.am kdf.h lhash.h md4.h md5.h modes.h obj_mac.h objects.h ocsp.h opensslconf.h opensslv.h ossl_typ.h pem.h pkcs12.h pkcs7.h rand.h rc4.h ripemd.h rsa.h safestack.h sha.h sha3.h srp.h ssl.h ssl23.h stack.h tls1.h txt_db.h ui.h x509.h x509_vfy.h x509v3.hwolfcrypt
port
Renesas
renesas-fspsm-crypt.h renesas-fspsm-types.h renesas-rx64-hw-crypt.h renesas-tsip-crypt.h renesas_cmn.h renesas_fspsm_internal.h renesas_sync.h renesas_tsip_internal.h renesas_tsip_types.hcaam
caam_driver.h caam_error.h caam_qnx.h wolfcaam.h wolfcaam_aes.h wolfcaam_cmac.h wolfcaam_ecdsa.h wolfcaam_fsl_nxp.h wolfcaam_hash.h wolfcaam_qnx.h wolfcaam_rsa.h wolfcaam_seco.h wolfcaam_sha.h wolfcaam_x25519.hwrapper
Ada
examples
src
aes_verify_main.adb rsa_verify_main.adb sha256_main.adb spark_sockets.adb spark_sockets.ads spark_terminal.adb spark_terminal.ads tls_client.adb tls_client.ads tls_client_main.adb tls_server.adb tls_server.ads tls_server_main.adbtests
src
aes_bindings_tests.adb aes_bindings_tests.ads rsa_verify_bindings_tests.adb rsa_verify_bindings_tests.ads sha256_bindings_tests.adb sha256_bindings_tests.ads tests.adbCSharp
wolfSSL-Example-IOCallbacks
App.config wolfSSL-Example-IOCallbacks.cs wolfSSL-Example-IOCallbacks.csprojwolfSSL-TLS-ServerThreaded
App.config wolfSSL-TLS-ServerThreaded.cs wolfSSL-TLS-ServerThreaded.csprojrust
wolfssl-wolfcrypt
src
aes.rs blake2.rs chacha20_poly1305.rs cmac.rs cmac_mac.rs curve25519.rs dh.rs dilithium.rs ecc.rs ecdsa.rs ed25519.rs ed448.rs fips.rs hkdf.rs hmac.rs hmac_mac.rs kdf.rs lib.rs lms.rs mlkem.rs mlkem_kem.rs pbkdf2_password_hash.rs prf.rs random.rs rsa.rs rsa_pkcs1v15.rs sha.rs sha_digest.rs sys.rstests
test_aes.rs test_blake2.rs test_chacha20_poly1305.rs test_cmac.rs test_cmac_mac.rs test_curve25519.rs test_dh.rs test_dilithium.rs test_ecc.rs test_ecdsa.rs test_ed25519.rs test_ed448.rs test_hkdf.rs test_hmac.rs test_hmac_mac.rs test_kdf.rs test_lms.rs test_mlkem.rs test_mlkem_kem.rs test_pbkdf2_password_hash.rs test_prf.rs test_random.rs test_rsa.rs test_rsa_pkcs1v15.rs test_sha.rs test_sha_digest.rs test_wolfcrypt.rszephyr
samples
wolfssl_benchmark
CMakeLists.txt README install_test.sh prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.confwolfssl_test
CMakeLists.txt README install_test.sh prj-no-malloc.conf prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.conf
wolfssl/wolfcrypt/src/port/arm/thumb2-sha512-asm.S
raw
1/* thumb2-sha512-asm
2 *
3 * Copyright (C) 2006-2026 wolfSSL Inc.
4 *
5 * This file is part of wolfSSL.
6 *
7 * wolfSSL is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * wolfSSL is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335, USA
20 */
21
22/* Generated using (from wolfssl):
23 * cd ../scripts
24 * ruby ./sha2/sha512.rb \
25 * thumb2 ../wolfssl/wolfcrypt/src/port/arm/thumb2-sha512-asm.S
26 */
27
28#include <wolfssl/wolfcrypt/libwolfssl_sources_asm.h>
29
30#ifdef WOLFSSL_ARMASM
31#ifdef WOLFSSL_ARMASM_THUMB2
32#ifndef WOLFSSL_ARMASM_INLINE
33 .thumb
34 .syntax unified
35#if defined(WOLFSSL_SHA512) || defined(WOLFSSL_SHA384)
36#ifdef WOLFSSL_ARMASM_NO_NEON
37#ifndef __APPLE__
38 .text
39 .type L_SHA512_transform_len_k, %object
40 .size L_SHA512_transform_len_k, 640
41#else
42 .section __DATA,__data
43#endif /* __APPLE__ */
44 /* 16-byte aligned, 128-bit aligned */
45#ifndef __APPLE__
46 .align 4
47#else
48 .p2align 4
49#endif /* __APPLE__ */
50L_SHA512_transform_len_k:
51 .quad 0x428a2f98d728ae22,0x7137449123ef65cd
52 .quad 0xb5c0fbcfec4d3b2f,0xe9b5dba58189dbbc
53 .quad 0x3956c25bf348b538,0x59f111f1b605d019
54 .quad 0x923f82a4af194f9b,0xab1c5ed5da6d8118
55 .quad 0xd807aa98a3030242,0x12835b0145706fbe
56 .quad 0x243185be4ee4b28c,0x550c7dc3d5ffb4e2
57 .quad 0x72be5d74f27b896f,0x80deb1fe3b1696b1
58 .quad 0x9bdc06a725c71235,0xc19bf174cf692694
59 .quad 0xe49b69c19ef14ad2,0xefbe4786384f25e3
60 .quad 0x0fc19dc68b8cd5b5,0x240ca1cc77ac9c65
61 .quad 0x2de92c6f592b0275,0x4a7484aa6ea6e483
62 .quad 0x5cb0a9dcbd41fbd4,0x76f988da831153b5
63 .quad 0x983e5152ee66dfab,0xa831c66d2db43210
64 .quad 0xb00327c898fb213f,0xbf597fc7beef0ee4
65 .quad 0xc6e00bf33da88fc2,0xd5a79147930aa725
66 .quad 0x06ca6351e003826f,0x142929670a0e6e70
67 .quad 0x27b70a8546d22ffc,0x2e1b21385c26c926
68 .quad 0x4d2c6dfc5ac42aed,0x53380d139d95b3df
69 .quad 0x650a73548baf63de,0x766a0abb3c77b2a8
70 .quad 0x81c2c92e47edaee6,0x92722c851482353b
71 .quad 0xa2bfe8a14cf10364,0xa81a664bbc423001
72 .quad 0xc24b8b70d0f89791,0xc76c51a30654be30
73 .quad 0xd192e819d6ef5218,0xd69906245565a910
74 .quad 0xf40e35855771202a,0x106aa07032bbd1b8
75 .quad 0x19a4c116b8d2d0c8,0x1e376c085141ab53
76 .quad 0x2748774cdf8eeb99,0x34b0bcb5e19b48a8
77 .quad 0x391c0cb3c5c95a63,0x4ed8aa4ae3418acb
78 .quad 0x5b9cca4f7763e373,0x682e6ff3d6b2b8a3
79 .quad 0x748f82ee5defb2fc,0x78a5636f43172f60
80 .quad 0x84c87814a1f0ab72,0x8cc702081a6439ec
81 .quad 0x90befffa23631e28,0xa4506cebde82bde9
82 .quad 0xbef9a3f7b2c67915,0xc67178f2e372532b
83 .quad 0xca273eceea26619c,0xd186b8c721c0c207
84 .quad 0xeada7dd6cde0eb1e,0xf57d4f7fee6ed178
85 .quad 0x06f067aa72176fba,0x0a637dc5a2c898a6
86 .quad 0x113f9804bef90dae,0x1b710b35131c471b
87 .quad 0x28db77f523047d84,0x32caab7b40c72493
88 .quad 0x3c9ebe0a15c9bebc,0x431d67c49c100d4c
89 .quad 0x4cc5d4becb3e42b6,0x597f299cfc657e2a
90 .quad 0x5fcb6fab3ad6faec,0x6c44198c4a475817
91 .text
92 .align 4
93 .globl Transform_Sha512_Len_base
94 .type Transform_Sha512_Len_base, %function
95Transform_Sha512_Len_base:
96 PUSH {r4, r5, r6, r7, r8, r9, r10, r11, lr}
97 SUB sp, sp, #0xc0
98 ADR r3, L_SHA512_transform_len_k
99 /* Copy digest to add in at end */
100 LDRD r4, r5, [r0]
101 LDRD r6, r7, [r0, #8]
102 LDRD r8, r9, [r0, #16]
103 LDRD r10, r11, [r0, #24]
104 STRD r4, r5, [sp, #128]
105 STRD r6, r7, [sp, #136]
106 STRD r8, r9, [sp, #144]
107 STRD r10, r11, [sp, #152]
108 LDRD r4, r5, [r0, #32]
109 LDRD r6, r7, [r0, #40]
110 LDRD r8, r9, [r0, #48]
111 LDRD r10, r11, [r0, #56]
112 STRD r4, r5, [sp, #160]
113 STRD r6, r7, [sp, #168]
114 STRD r8, r9, [sp, #176]
115 STRD r10, r11, [sp, #184]
116 /* Start of loop processing a block */
117L_SHA512_transform_len_begin:
118 /* Load, Reverse and Store W */
119 LDR r4, [r1]
120 LDR r5, [r1, #4]
121 LDR r6, [r1, #8]
122 LDR r7, [r1, #12]
123 LDR r8, [r1, #16]
124 LDR r9, [r1, #20]
125 LDR r10, [r1, #24]
126 LDR r11, [r1, #28]
127 REV r4, r4
128 REV r5, r5
129 REV r6, r6
130 REV r7, r7
131 REV r8, r8
132 REV r9, r9
133 REV r10, r10
134 REV r11, r11
135 STR r5, [sp]
136 STR r4, [sp, #4]
137 STR r7, [sp, #8]
138 STR r6, [sp, #12]
139 STR r9, [sp, #16]
140 STR r8, [sp, #20]
141 STR r11, [sp, #24]
142 STR r10, [sp, #28]
143 LDR r4, [r1, #32]
144 LDR r5, [r1, #36]
145 LDR r6, [r1, #40]
146 LDR r7, [r1, #44]
147 LDR r8, [r1, #48]
148 LDR r9, [r1, #52]
149 LDR r10, [r1, #56]
150 LDR r11, [r1, #60]
151 REV r4, r4
152 REV r5, r5
153 REV r6, r6
154 REV r7, r7
155 REV r8, r8
156 REV r9, r9
157 REV r10, r10
158 REV r11, r11
159 STR r5, [sp, #32]
160 STR r4, [sp, #36]
161 STR r7, [sp, #40]
162 STR r6, [sp, #44]
163 STR r9, [sp, #48]
164 STR r8, [sp, #52]
165 STR r11, [sp, #56]
166 STR r10, [sp, #60]
167 LDR r4, [r1, #64]
168 LDR r5, [r1, #68]
169 LDR r6, [r1, #72]
170 LDR r7, [r1, #76]
171 LDR r8, [r1, #80]
172 LDR r9, [r1, #84]
173 LDR r10, [r1, #88]
174 LDR r11, [r1, #92]
175 REV r4, r4
176 REV r5, r5
177 REV r6, r6
178 REV r7, r7
179 REV r8, r8
180 REV r9, r9
181 REV r10, r10
182 REV r11, r11
183 STR r5, [sp, #64]
184 STR r4, [sp, #68]
185 STR r7, [sp, #72]
186 STR r6, [sp, #76]
187 STR r9, [sp, #80]
188 STR r8, [sp, #84]
189 STR r11, [sp, #88]
190 STR r10, [sp, #92]
191 LDR r4, [r1, #96]
192 LDR r5, [r1, #100]
193 LDR r6, [r1, #104]
194 LDR r7, [r1, #108]
195 LDR r8, [r1, #112]
196 LDR r9, [r1, #116]
197 LDR r10, [r1, #120]
198 LDR r11, [r1, #124]
199 REV r4, r4
200 REV r5, r5
201 REV r6, r6
202 REV r7, r7
203 REV r8, r8
204 REV r9, r9
205 REV r10, r10
206 REV r11, r11
207 STR r5, [sp, #96]
208 STR r4, [sp, #100]
209 STR r7, [sp, #104]
210 STR r6, [sp, #108]
211 STR r9, [sp, #112]
212 STR r8, [sp, #116]
213 STR r11, [sp, #120]
214 STR r10, [sp, #124]
215 /* Pre-calc: b ^ c */
216 LDRD r10, r11, [r0, #8]
217 LDRD r4, r5, [r0, #16]
218 EOR r10, r10, r4
219 EOR r11, r11, r5
220 MOV r12, #0x4
221 /* Start of 16 rounds */
222L_SHA512_transform_len_start:
223 /* Round 0 */
224 LDRD r4, r5, [r0, #32]
225 LSRS r6, r4, #14
226 LSRS r7, r5, #14
227 ORR r7, r7, r4, LSL #18
228 ORR r6, r6, r5, LSL #18
229 LSRS r8, r4, #18
230 LSRS r9, r5, #18
231 ORR r9, r9, r4, LSL #14
232 ORR r8, r8, r5, LSL #14
233 EOR r6, r6, r8
234 EOR r7, r7, r9
235 LSLS r8, r4, #23
236 LSLS r9, r5, #23
237 ORR r9, r9, r4, LSR #9
238 ORR r8, r8, r5, LSR #9
239 LDRD r4, r5, [r0, #56]
240 EOR r6, r6, r8
241 EOR r7, r7, r9
242 ADDS r4, r4, r6
243 ADC r5, r5, r7
244 STRD r4, r5, [r0, #56]
245 LDRD r4, r5, [r0, #32]
246 LDRD r6, r7, [r0, #40]
247 LDRD r8, r9, [r0, #48]
248 EOR r6, r6, r8
249 EOR r7, r7, r9
250 AND r6, r6, r4
251 AND r7, r7, r5
252 EOR r6, r6, r8
253 EOR r7, r7, r9
254 LDRD r4, r5, [r0, #56]
255 LDRD r8, r9, [sp]
256 ADDS r4, r4, r6
257 ADC r5, r5, r7
258 LDRD r6, r7, [r3]
259 ADDS r4, r4, r8
260 ADC r5, r5, r9
261 LDRD r8, r9, [r0, #24]
262 ADDS r4, r4, r6
263 ADC r5, r5, r7
264 STRD r4, r5, [r0, #56]
265 ADDS r8, r8, r4
266 ADC r9, r9, r5
267 LDRD r4, r5, [r0]
268 STRD r8, r9, [r0, #24]
269 LSRS r6, r4, #28
270 LSRS r7, r5, #28
271 ORR r7, r7, r4, LSL #4
272 ORR r6, r6, r5, LSL #4
273 LSLS r8, r4, #30
274 LSLS r9, r5, #30
275 ORR r9, r9, r4, LSR #2
276 ORR r8, r8, r5, LSR #2
277 EOR r6, r6, r8
278 EOR r7, r7, r9
279 LSLS r8, r4, #25
280 LSLS r9, r5, #25
281 ORR r9, r9, r4, LSR #7
282 ORR r8, r8, r5, LSR #7
283 LDRD r4, r5, [r0, #56]
284 EOR r6, r6, r8
285 EOR r7, r7, r9
286 ADDS r4, r4, r6
287 ADC r5, r5, r7
288 LDRD r8, r9, [r0]
289 LDRD r6, r7, [r0, #8]
290 STRD r4, r5, [r0, #56]
291 EOR r8, r8, r6
292 EOR r9, r9, r7
293 AND r10, r10, r8
294 AND r11, r11, r9
295 EOR r10, r10, r6
296 EOR r11, r11, r7
297 LDRD r6, r7, [r0, #56]
298 ADDS r6, r6, r10
299 ADC r7, r7, r11
300 STRD r6, r7, [r0, #56]
301 MOV r10, r8
302 MOV r11, r9
303 /* Calc new W[0] */
304 LDRD r4, r5, [sp, #112]
305 LSRS r6, r4, #19
306 LSRS r7, r5, #19
307 ORR r7, r7, r4, LSL #13
308 ORR r6, r6, r5, LSL #13
309 LSLS r8, r4, #3
310 LSLS r9, r5, #3
311 ORR r9, r9, r4, LSR #29
312 ORR r8, r8, r5, LSR #29
313 EOR r7, r7, r9
314 EOR r6, r6, r8
315 LSRS r8, r4, #6
316 LSRS r9, r5, #6
317 ORR r8, r8, r5, LSL #26
318 EOR r7, r7, r9
319 EOR r6, r6, r8
320 LDRD r4, r5, [sp]
321 LDRD r8, r9, [sp, #72]
322 ADDS r4, r4, r6
323 ADC r5, r5, r7
324 ADDS r4, r4, r8
325 ADC r5, r5, r9
326 STRD r4, r5, [sp]
327 LDRD r4, r5, [sp, #8]
328 LSRS r6, r4, #1
329 LSRS r7, r5, #1
330 ORR r7, r7, r4, LSL #31
331 ORR r6, r6, r5, LSL #31
332 LSRS r8, r4, #8
333 LSRS r9, r5, #8
334 ORR r9, r9, r4, LSL #24
335 ORR r8, r8, r5, LSL #24
336 EOR r7, r7, r9
337 EOR r6, r6, r8
338 LSRS r8, r4, #7
339 LSRS r9, r5, #7
340 ORR r8, r8, r5, LSL #25
341 EOR r7, r7, r9
342 EOR r6, r6, r8
343 LDRD r4, r5, [sp]
344 ADDS r4, r4, r6
345 ADC r5, r5, r7
346 STRD r4, r5, [sp]
347 /* Round 1 */
348 LDRD r4, r5, [r0, #24]
349 LSRS r6, r4, #14
350 LSRS r7, r5, #14
351 ORR r7, r7, r4, LSL #18
352 ORR r6, r6, r5, LSL #18
353 LSRS r8, r4, #18
354 LSRS r9, r5, #18
355 ORR r9, r9, r4, LSL #14
356 ORR r8, r8, r5, LSL #14
357 EOR r6, r6, r8
358 EOR r7, r7, r9
359 LSLS r8, r4, #23
360 LSLS r9, r5, #23
361 ORR r9, r9, r4, LSR #9
362 ORR r8, r8, r5, LSR #9
363 LDRD r4, r5, [r0, #48]
364 EOR r6, r6, r8
365 EOR r7, r7, r9
366 ADDS r4, r4, r6
367 ADC r5, r5, r7
368 STRD r4, r5, [r0, #48]
369 LDRD r4, r5, [r0, #24]
370 LDRD r6, r7, [r0, #32]
371 LDRD r8, r9, [r0, #40]
372 EOR r6, r6, r8
373 EOR r7, r7, r9
374 AND r6, r6, r4
375 AND r7, r7, r5
376 EOR r6, r6, r8
377 EOR r7, r7, r9
378 LDRD r4, r5, [r0, #48]
379 LDRD r8, r9, [sp, #8]
380 ADDS r4, r4, r6
381 ADC r5, r5, r7
382 LDRD r6, r7, [r3, #8]
383 ADDS r4, r4, r8
384 ADC r5, r5, r9
385 LDRD r8, r9, [r0, #16]
386 ADDS r4, r4, r6
387 ADC r5, r5, r7
388 STRD r4, r5, [r0, #48]
389 ADDS r8, r8, r4
390 ADC r9, r9, r5
391 LDRD r4, r5, [r0, #56]
392 STRD r8, r9, [r0, #16]
393 LSRS r6, r4, #28
394 LSRS r7, r5, #28
395 ORR r7, r7, r4, LSL #4
396 ORR r6, r6, r5, LSL #4
397 LSLS r8, r4, #30
398 LSLS r9, r5, #30
399 ORR r9, r9, r4, LSR #2
400 ORR r8, r8, r5, LSR #2
401 EOR r6, r6, r8
402 EOR r7, r7, r9
403 LSLS r8, r4, #25
404 LSLS r9, r5, #25
405 ORR r9, r9, r4, LSR #7
406 ORR r8, r8, r5, LSR #7
407 LDRD r4, r5, [r0, #48]
408 EOR r6, r6, r8
409 EOR r7, r7, r9
410 ADDS r4, r4, r6
411 ADC r5, r5, r7
412 LDRD r8, r9, [r0, #56]
413 LDRD r6, r7, [r0]
414 STRD r4, r5, [r0, #48]
415 EOR r8, r8, r6
416 EOR r9, r9, r7
417 AND r10, r10, r8
418 AND r11, r11, r9
419 EOR r10, r10, r6
420 EOR r11, r11, r7
421 LDRD r6, r7, [r0, #48]
422 ADDS r6, r6, r10
423 ADC r7, r7, r11
424 STRD r6, r7, [r0, #48]
425 MOV r10, r8
426 MOV r11, r9
427 /* Calc new W[1] */
428 LDRD r4, r5, [sp, #120]
429 LSRS r6, r4, #19
430 LSRS r7, r5, #19
431 ORR r7, r7, r4, LSL #13
432 ORR r6, r6, r5, LSL #13
433 LSLS r8, r4, #3
434 LSLS r9, r5, #3
435 ORR r9, r9, r4, LSR #29
436 ORR r8, r8, r5, LSR #29
437 EOR r7, r7, r9
438 EOR r6, r6, r8
439 LSRS r8, r4, #6
440 LSRS r9, r5, #6
441 ORR r8, r8, r5, LSL #26
442 EOR r7, r7, r9
443 EOR r6, r6, r8
444 LDRD r4, r5, [sp, #8]
445 LDRD r8, r9, [sp, #80]
446 ADDS r4, r4, r6
447 ADC r5, r5, r7
448 ADDS r4, r4, r8
449 ADC r5, r5, r9
450 STRD r4, r5, [sp, #8]
451 LDRD r4, r5, [sp, #16]
452 LSRS r6, r4, #1
453 LSRS r7, r5, #1
454 ORR r7, r7, r4, LSL #31
455 ORR r6, r6, r5, LSL #31
456 LSRS r8, r4, #8
457 LSRS r9, r5, #8
458 ORR r9, r9, r4, LSL #24
459 ORR r8, r8, r5, LSL #24
460 EOR r7, r7, r9
461 EOR r6, r6, r8
462 LSRS r8, r4, #7
463 LSRS r9, r5, #7
464 ORR r8, r8, r5, LSL #25
465 EOR r7, r7, r9
466 EOR r6, r6, r8
467 LDRD r4, r5, [sp, #8]
468 ADDS r4, r4, r6
469 ADC r5, r5, r7
470 STRD r4, r5, [sp, #8]
471 /* Round 2 */
472 LDRD r4, r5, [r0, #16]
473 LSRS r6, r4, #14
474 LSRS r7, r5, #14
475 ORR r7, r7, r4, LSL #18
476 ORR r6, r6, r5, LSL #18
477 LSRS r8, r4, #18
478 LSRS r9, r5, #18
479 ORR r9, r9, r4, LSL #14
480 ORR r8, r8, r5, LSL #14
481 EOR r6, r6, r8
482 EOR r7, r7, r9
483 LSLS r8, r4, #23
484 LSLS r9, r5, #23
485 ORR r9, r9, r4, LSR #9
486 ORR r8, r8, r5, LSR #9
487 LDRD r4, r5, [r0, #40]
488 EOR r6, r6, r8
489 EOR r7, r7, r9
490 ADDS r4, r4, r6
491 ADC r5, r5, r7
492 STRD r4, r5, [r0, #40]
493 LDRD r4, r5, [r0, #16]
494 LDRD r6, r7, [r0, #24]
495 LDRD r8, r9, [r0, #32]
496 EOR r6, r6, r8
497 EOR r7, r7, r9
498 AND r6, r6, r4
499 AND r7, r7, r5
500 EOR r6, r6, r8
501 EOR r7, r7, r9
502 LDRD r4, r5, [r0, #40]
503 LDRD r8, r9, [sp, #16]
504 ADDS r4, r4, r6
505 ADC r5, r5, r7
506 LDRD r6, r7, [r3, #16]
507 ADDS r4, r4, r8
508 ADC r5, r5, r9
509 LDRD r8, r9, [r0, #8]
510 ADDS r4, r4, r6
511 ADC r5, r5, r7
512 STRD r4, r5, [r0, #40]
513 ADDS r8, r8, r4
514 ADC r9, r9, r5
515 LDRD r4, r5, [r0, #48]
516 STRD r8, r9, [r0, #8]
517 LSRS r6, r4, #28
518 LSRS r7, r5, #28
519 ORR r7, r7, r4, LSL #4
520 ORR r6, r6, r5, LSL #4
521 LSLS r8, r4, #30
522 LSLS r9, r5, #30
523 ORR r9, r9, r4, LSR #2
524 ORR r8, r8, r5, LSR #2
525 EOR r6, r6, r8
526 EOR r7, r7, r9
527 LSLS r8, r4, #25
528 LSLS r9, r5, #25
529 ORR r9, r9, r4, LSR #7
530 ORR r8, r8, r5, LSR #7
531 LDRD r4, r5, [r0, #40]
532 EOR r6, r6, r8
533 EOR r7, r7, r9
534 ADDS r4, r4, r6
535 ADC r5, r5, r7
536 LDRD r8, r9, [r0, #48]
537 LDRD r6, r7, [r0, #56]
538 STRD r4, r5, [r0, #40]
539 EOR r8, r8, r6
540 EOR r9, r9, r7
541 AND r10, r10, r8
542 AND r11, r11, r9
543 EOR r10, r10, r6
544 EOR r11, r11, r7
545 LDRD r6, r7, [r0, #40]
546 ADDS r6, r6, r10
547 ADC r7, r7, r11
548 STRD r6, r7, [r0, #40]
549 MOV r10, r8
550 MOV r11, r9
551 /* Calc new W[2] */
552 LDRD r4, r5, [sp]
553 LSRS r6, r4, #19
554 LSRS r7, r5, #19
555 ORR r7, r7, r4, LSL #13
556 ORR r6, r6, r5, LSL #13
557 LSLS r8, r4, #3
558 LSLS r9, r5, #3
559 ORR r9, r9, r4, LSR #29
560 ORR r8, r8, r5, LSR #29
561 EOR r7, r7, r9
562 EOR r6, r6, r8
563 LSRS r8, r4, #6
564 LSRS r9, r5, #6
565 ORR r8, r8, r5, LSL #26
566 EOR r7, r7, r9
567 EOR r6, r6, r8
568 LDRD r4, r5, [sp, #16]
569 LDRD r8, r9, [sp, #88]
570 ADDS r4, r4, r6
571 ADC r5, r5, r7
572 ADDS r4, r4, r8
573 ADC r5, r5, r9
574 STRD r4, r5, [sp, #16]
575 LDRD r4, r5, [sp, #24]
576 LSRS r6, r4, #1
577 LSRS r7, r5, #1
578 ORR r7, r7, r4, LSL #31
579 ORR r6, r6, r5, LSL #31
580 LSRS r8, r4, #8
581 LSRS r9, r5, #8
582 ORR r9, r9, r4, LSL #24
583 ORR r8, r8, r5, LSL #24
584 EOR r7, r7, r9
585 EOR r6, r6, r8
586 LSRS r8, r4, #7
587 LSRS r9, r5, #7
588 ORR r8, r8, r5, LSL #25
589 EOR r7, r7, r9
590 EOR r6, r6, r8
591 LDRD r4, r5, [sp, #16]
592 ADDS r4, r4, r6
593 ADC r5, r5, r7
594 STRD r4, r5, [sp, #16]
595 /* Round 3 */
596 LDRD r4, r5, [r0, #8]
597 LSRS r6, r4, #14
598 LSRS r7, r5, #14
599 ORR r7, r7, r4, LSL #18
600 ORR r6, r6, r5, LSL #18
601 LSRS r8, r4, #18
602 LSRS r9, r5, #18
603 ORR r9, r9, r4, LSL #14
604 ORR r8, r8, r5, LSL #14
605 EOR r6, r6, r8
606 EOR r7, r7, r9
607 LSLS r8, r4, #23
608 LSLS r9, r5, #23
609 ORR r9, r9, r4, LSR #9
610 ORR r8, r8, r5, LSR #9
611 LDRD r4, r5, [r0, #32]
612 EOR r6, r6, r8
613 EOR r7, r7, r9
614 ADDS r4, r4, r6
615 ADC r5, r5, r7
616 STRD r4, r5, [r0, #32]
617 LDRD r4, r5, [r0, #8]
618 LDRD r6, r7, [r0, #16]
619 LDRD r8, r9, [r0, #24]
620 EOR r6, r6, r8
621 EOR r7, r7, r9
622 AND r6, r6, r4
623 AND r7, r7, r5
624 EOR r6, r6, r8
625 EOR r7, r7, r9
626 LDRD r4, r5, [r0, #32]
627 LDRD r8, r9, [sp, #24]
628 ADDS r4, r4, r6
629 ADC r5, r5, r7
630 LDRD r6, r7, [r3, #24]
631 ADDS r4, r4, r8
632 ADC r5, r5, r9
633 LDRD r8, r9, [r0]
634 ADDS r4, r4, r6
635 ADC r5, r5, r7
636 STRD r4, r5, [r0, #32]
637 ADDS r8, r8, r4
638 ADC r9, r9, r5
639 LDRD r4, r5, [r0, #40]
640 STRD r8, r9, [r0]
641 LSRS r6, r4, #28
642 LSRS r7, r5, #28
643 ORR r7, r7, r4, LSL #4
644 ORR r6, r6, r5, LSL #4
645 LSLS r8, r4, #30
646 LSLS r9, r5, #30
647 ORR r9, r9, r4, LSR #2
648 ORR r8, r8, r5, LSR #2
649 EOR r6, r6, r8
650 EOR r7, r7, r9
651 LSLS r8, r4, #25
652 LSLS r9, r5, #25
653 ORR r9, r9, r4, LSR #7
654 ORR r8, r8, r5, LSR #7
655 LDRD r4, r5, [r0, #32]
656 EOR r6, r6, r8
657 EOR r7, r7, r9
658 ADDS r4, r4, r6
659 ADC r5, r5, r7
660 LDRD r8, r9, [r0, #40]
661 LDRD r6, r7, [r0, #48]
662 STRD r4, r5, [r0, #32]
663 EOR r8, r8, r6
664 EOR r9, r9, r7
665 AND r10, r10, r8
666 AND r11, r11, r9
667 EOR r10, r10, r6
668 EOR r11, r11, r7
669 LDRD r6, r7, [r0, #32]
670 ADDS r6, r6, r10
671 ADC r7, r7, r11
672 STRD r6, r7, [r0, #32]
673 MOV r10, r8
674 MOV r11, r9
675 /* Calc new W[3] */
676 LDRD r4, r5, [sp, #8]
677 LSRS r6, r4, #19
678 LSRS r7, r5, #19
679 ORR r7, r7, r4, LSL #13
680 ORR r6, r6, r5, LSL #13
681 LSLS r8, r4, #3
682 LSLS r9, r5, #3
683 ORR r9, r9, r4, LSR #29
684 ORR r8, r8, r5, LSR #29
685 EOR r7, r7, r9
686 EOR r6, r6, r8
687 LSRS r8, r4, #6
688 LSRS r9, r5, #6
689 ORR r8, r8, r5, LSL #26
690 EOR r7, r7, r9
691 EOR r6, r6, r8
692 LDRD r4, r5, [sp, #24]
693 LDRD r8, r9, [sp, #96]
694 ADDS r4, r4, r6
695 ADC r5, r5, r7
696 ADDS r4, r4, r8
697 ADC r5, r5, r9
698 STRD r4, r5, [sp, #24]
699 LDRD r4, r5, [sp, #32]
700 LSRS r6, r4, #1
701 LSRS r7, r5, #1
702 ORR r7, r7, r4, LSL #31
703 ORR r6, r6, r5, LSL #31
704 LSRS r8, r4, #8
705 LSRS r9, r5, #8
706 ORR r9, r9, r4, LSL #24
707 ORR r8, r8, r5, LSL #24
708 EOR r7, r7, r9
709 EOR r6, r6, r8
710 LSRS r8, r4, #7
711 LSRS r9, r5, #7
712 ORR r8, r8, r5, LSL #25
713 EOR r7, r7, r9
714 EOR r6, r6, r8
715 LDRD r4, r5, [sp, #24]
716 ADDS r4, r4, r6
717 ADC r5, r5, r7
718 STRD r4, r5, [sp, #24]
719 /* Round 4 */
720 LDRD r4, r5, [r0]
721 LSRS r6, r4, #14
722 LSRS r7, r5, #14
723 ORR r7, r7, r4, LSL #18
724 ORR r6, r6, r5, LSL #18
725 LSRS r8, r4, #18
726 LSRS r9, r5, #18
727 ORR r9, r9, r4, LSL #14
728 ORR r8, r8, r5, LSL #14
729 EOR r6, r6, r8
730 EOR r7, r7, r9
731 LSLS r8, r4, #23
732 LSLS r9, r5, #23
733 ORR r9, r9, r4, LSR #9
734 ORR r8, r8, r5, LSR #9
735 LDRD r4, r5, [r0, #24]
736 EOR r6, r6, r8
737 EOR r7, r7, r9
738 ADDS r4, r4, r6
739 ADC r5, r5, r7
740 STRD r4, r5, [r0, #24]
741 LDRD r4, r5, [r0]
742 LDRD r6, r7, [r0, #8]
743 LDRD r8, r9, [r0, #16]
744 EOR r6, r6, r8
745 EOR r7, r7, r9
746 AND r6, r6, r4
747 AND r7, r7, r5
748 EOR r6, r6, r8
749 EOR r7, r7, r9
750 LDRD r4, r5, [r0, #24]
751 LDRD r8, r9, [sp, #32]
752 ADDS r4, r4, r6
753 ADC r5, r5, r7
754 LDRD r6, r7, [r3, #32]
755 ADDS r4, r4, r8
756 ADC r5, r5, r9
757 LDRD r8, r9, [r0, #56]
758 ADDS r4, r4, r6
759 ADC r5, r5, r7
760 STRD r4, r5, [r0, #24]
761 ADDS r8, r8, r4
762 ADC r9, r9, r5
763 LDRD r4, r5, [r0, #32]
764 STRD r8, r9, [r0, #56]
765 LSRS r6, r4, #28
766 LSRS r7, r5, #28
767 ORR r7, r7, r4, LSL #4
768 ORR r6, r6, r5, LSL #4
769 LSLS r8, r4, #30
770 LSLS r9, r5, #30
771 ORR r9, r9, r4, LSR #2
772 ORR r8, r8, r5, LSR #2
773 EOR r6, r6, r8
774 EOR r7, r7, r9
775 LSLS r8, r4, #25
776 LSLS r9, r5, #25
777 ORR r9, r9, r4, LSR #7
778 ORR r8, r8, r5, LSR #7
779 LDRD r4, r5, [r0, #24]
780 EOR r6, r6, r8
781 EOR r7, r7, r9
782 ADDS r4, r4, r6
783 ADC r5, r5, r7
784 LDRD r8, r9, [r0, #32]
785 LDRD r6, r7, [r0, #40]
786 STRD r4, r5, [r0, #24]
787 EOR r8, r8, r6
788 EOR r9, r9, r7
789 AND r10, r10, r8
790 AND r11, r11, r9
791 EOR r10, r10, r6
792 EOR r11, r11, r7
793 LDRD r6, r7, [r0, #24]
794 ADDS r6, r6, r10
795 ADC r7, r7, r11
796 STRD r6, r7, [r0, #24]
797 MOV r10, r8
798 MOV r11, r9
799 /* Calc new W[4] */
800 LDRD r4, r5, [sp, #16]
801 LSRS r6, r4, #19
802 LSRS r7, r5, #19
803 ORR r7, r7, r4, LSL #13
804 ORR r6, r6, r5, LSL #13
805 LSLS r8, r4, #3
806 LSLS r9, r5, #3
807 ORR r9, r9, r4, LSR #29
808 ORR r8, r8, r5, LSR #29
809 EOR r7, r7, r9
810 EOR r6, r6, r8
811 LSRS r8, r4, #6
812 LSRS r9, r5, #6
813 ORR r8, r8, r5, LSL #26
814 EOR r7, r7, r9
815 EOR r6, r6, r8
816 LDRD r4, r5, [sp, #32]
817 LDRD r8, r9, [sp, #104]
818 ADDS r4, r4, r6
819 ADC r5, r5, r7
820 ADDS r4, r4, r8
821 ADC r5, r5, r9
822 STRD r4, r5, [sp, #32]
823 LDRD r4, r5, [sp, #40]
824 LSRS r6, r4, #1
825 LSRS r7, r5, #1
826 ORR r7, r7, r4, LSL #31
827 ORR r6, r6, r5, LSL #31
828 LSRS r8, r4, #8
829 LSRS r9, r5, #8
830 ORR r9, r9, r4, LSL #24
831 ORR r8, r8, r5, LSL #24
832 EOR r7, r7, r9
833 EOR r6, r6, r8
834 LSRS r8, r4, #7
835 LSRS r9, r5, #7
836 ORR r8, r8, r5, LSL #25
837 EOR r7, r7, r9
838 EOR r6, r6, r8
839 LDRD r4, r5, [sp, #32]
840 ADDS r4, r4, r6
841 ADC r5, r5, r7
842 STRD r4, r5, [sp, #32]
843 /* Round 5 */
844 LDRD r4, r5, [r0, #56]
845 LSRS r6, r4, #14
846 LSRS r7, r5, #14
847 ORR r7, r7, r4, LSL #18
848 ORR r6, r6, r5, LSL #18
849 LSRS r8, r4, #18
850 LSRS r9, r5, #18
851 ORR r9, r9, r4, LSL #14
852 ORR r8, r8, r5, LSL #14
853 EOR r6, r6, r8
854 EOR r7, r7, r9
855 LSLS r8, r4, #23
856 LSLS r9, r5, #23
857 ORR r9, r9, r4, LSR #9
858 ORR r8, r8, r5, LSR #9
859 LDRD r4, r5, [r0, #16]
860 EOR r6, r6, r8
861 EOR r7, r7, r9
862 ADDS r4, r4, r6
863 ADC r5, r5, r7
864 STRD r4, r5, [r0, #16]
865 LDRD r4, r5, [r0, #56]
866 LDRD r6, r7, [r0]
867 LDRD r8, r9, [r0, #8]
868 EOR r6, r6, r8
869 EOR r7, r7, r9
870 AND r6, r6, r4
871 AND r7, r7, r5
872 EOR r6, r6, r8
873 EOR r7, r7, r9
874 LDRD r4, r5, [r0, #16]
875 LDRD r8, r9, [sp, #40]
876 ADDS r4, r4, r6
877 ADC r5, r5, r7
878 LDRD r6, r7, [r3, #40]
879 ADDS r4, r4, r8
880 ADC r5, r5, r9
881 LDRD r8, r9, [r0, #48]
882 ADDS r4, r4, r6
883 ADC r5, r5, r7
884 STRD r4, r5, [r0, #16]
885 ADDS r8, r8, r4
886 ADC r9, r9, r5
887 LDRD r4, r5, [r0, #24]
888 STRD r8, r9, [r0, #48]
889 LSRS r6, r4, #28
890 LSRS r7, r5, #28
891 ORR r7, r7, r4, LSL #4
892 ORR r6, r6, r5, LSL #4
893 LSLS r8, r4, #30
894 LSLS r9, r5, #30
895 ORR r9, r9, r4, LSR #2
896 ORR r8, r8, r5, LSR #2
897 EOR r6, r6, r8
898 EOR r7, r7, r9
899 LSLS r8, r4, #25
900 LSLS r9, r5, #25
901 ORR r9, r9, r4, LSR #7
902 ORR r8, r8, r5, LSR #7
903 LDRD r4, r5, [r0, #16]
904 EOR r6, r6, r8
905 EOR r7, r7, r9
906 ADDS r4, r4, r6
907 ADC r5, r5, r7
908 LDRD r8, r9, [r0, #24]
909 LDRD r6, r7, [r0, #32]
910 STRD r4, r5, [r0, #16]
911 EOR r8, r8, r6
912 EOR r9, r9, r7
913 AND r10, r10, r8
914 AND r11, r11, r9
915 EOR r10, r10, r6
916 EOR r11, r11, r7
917 LDRD r6, r7, [r0, #16]
918 ADDS r6, r6, r10
919 ADC r7, r7, r11
920 STRD r6, r7, [r0, #16]
921 MOV r10, r8
922 MOV r11, r9
923 /* Calc new W[5] */
924 LDRD r4, r5, [sp, #24]
925 LSRS r6, r4, #19
926 LSRS r7, r5, #19
927 ORR r7, r7, r4, LSL #13
928 ORR r6, r6, r5, LSL #13
929 LSLS r8, r4, #3
930 LSLS r9, r5, #3
931 ORR r9, r9, r4, LSR #29
932 ORR r8, r8, r5, LSR #29
933 EOR r7, r7, r9
934 EOR r6, r6, r8
935 LSRS r8, r4, #6
936 LSRS r9, r5, #6
937 ORR r8, r8, r5, LSL #26
938 EOR r7, r7, r9
939 EOR r6, r6, r8
940 LDRD r4, r5, [sp, #40]
941 LDRD r8, r9, [sp, #112]
942 ADDS r4, r4, r6
943 ADC r5, r5, r7
944 ADDS r4, r4, r8
945 ADC r5, r5, r9
946 STRD r4, r5, [sp, #40]
947 LDRD r4, r5, [sp, #48]
948 LSRS r6, r4, #1
949 LSRS r7, r5, #1
950 ORR r7, r7, r4, LSL #31
951 ORR r6, r6, r5, LSL #31
952 LSRS r8, r4, #8
953 LSRS r9, r5, #8
954 ORR r9, r9, r4, LSL #24
955 ORR r8, r8, r5, LSL #24
956 EOR r7, r7, r9
957 EOR r6, r6, r8
958 LSRS r8, r4, #7
959 LSRS r9, r5, #7
960 ORR r8, r8, r5, LSL #25
961 EOR r7, r7, r9
962 EOR r6, r6, r8
963 LDRD r4, r5, [sp, #40]
964 ADDS r4, r4, r6
965 ADC r5, r5, r7
966 STRD r4, r5, [sp, #40]
967 /* Round 6 */
968 LDRD r4, r5, [r0, #48]
969 LSRS r6, r4, #14
970 LSRS r7, r5, #14
971 ORR r7, r7, r4, LSL #18
972 ORR r6, r6, r5, LSL #18
973 LSRS r8, r4, #18
974 LSRS r9, r5, #18
975 ORR r9, r9, r4, LSL #14
976 ORR r8, r8, r5, LSL #14
977 EOR r6, r6, r8
978 EOR r7, r7, r9
979 LSLS r8, r4, #23
980 LSLS r9, r5, #23
981 ORR r9, r9, r4, LSR #9
982 ORR r8, r8, r5, LSR #9
983 LDRD r4, r5, [r0, #8]
984 EOR r6, r6, r8
985 EOR r7, r7, r9
986 ADDS r4, r4, r6
987 ADC r5, r5, r7
988 STRD r4, r5, [r0, #8]
989 LDRD r4, r5, [r0, #48]
990 LDRD r6, r7, [r0, #56]
991 LDRD r8, r9, [r0]
992 EOR r6, r6, r8
993 EOR r7, r7, r9
994 AND r6, r6, r4
995 AND r7, r7, r5
996 EOR r6, r6, r8
997 EOR r7, r7, r9
998 LDRD r4, r5, [r0, #8]
999 LDRD r8, r9, [sp, #48]
1000 ADDS r4, r4, r6
1001 ADC r5, r5, r7
1002 LDRD r6, r7, [r3, #48]
1003 ADDS r4, r4, r8
1004 ADC r5, r5, r9
1005 LDRD r8, r9, [r0, #40]
1006 ADDS r4, r4, r6
1007 ADC r5, r5, r7
1008 STRD r4, r5, [r0, #8]
1009 ADDS r8, r8, r4
1010 ADC r9, r9, r5
1011 LDRD r4, r5, [r0, #16]
1012 STRD r8, r9, [r0, #40]
1013 LSRS r6, r4, #28
1014 LSRS r7, r5, #28
1015 ORR r7, r7, r4, LSL #4
1016 ORR r6, r6, r5, LSL #4
1017 LSLS r8, r4, #30
1018 LSLS r9, r5, #30
1019 ORR r9, r9, r4, LSR #2
1020 ORR r8, r8, r5, LSR #2
1021 EOR r6, r6, r8
1022 EOR r7, r7, r9
1023 LSLS r8, r4, #25
1024 LSLS r9, r5, #25
1025 ORR r9, r9, r4, LSR #7
1026 ORR r8, r8, r5, LSR #7
1027 LDRD r4, r5, [r0, #8]
1028 EOR r6, r6, r8
1029 EOR r7, r7, r9
1030 ADDS r4, r4, r6
1031 ADC r5, r5, r7
1032 LDRD r8, r9, [r0, #16]
1033 LDRD r6, r7, [r0, #24]
1034 STRD r4, r5, [r0, #8]
1035 EOR r8, r8, r6
1036 EOR r9, r9, r7
1037 AND r10, r10, r8
1038 AND r11, r11, r9
1039 EOR r10, r10, r6
1040 EOR r11, r11, r7
1041 LDRD r6, r7, [r0, #8]
1042 ADDS r6, r6, r10
1043 ADC r7, r7, r11
1044 STRD r6, r7, [r0, #8]
1045 MOV r10, r8
1046 MOV r11, r9
1047 /* Calc new W[6] */
1048 LDRD r4, r5, [sp, #32]
1049 LSRS r6, r4, #19
1050 LSRS r7, r5, #19
1051 ORR r7, r7, r4, LSL #13
1052 ORR r6, r6, r5, LSL #13
1053 LSLS r8, r4, #3
1054 LSLS r9, r5, #3
1055 ORR r9, r9, r4, LSR #29
1056 ORR r8, r8, r5, LSR #29
1057 EOR r7, r7, r9
1058 EOR r6, r6, r8
1059 LSRS r8, r4, #6
1060 LSRS r9, r5, #6
1061 ORR r8, r8, r5, LSL #26
1062 EOR r7, r7, r9
1063 EOR r6, r6, r8
1064 LDRD r4, r5, [sp, #48]
1065 LDRD r8, r9, [sp, #120]
1066 ADDS r4, r4, r6
1067 ADC r5, r5, r7
1068 ADDS r4, r4, r8
1069 ADC r5, r5, r9
1070 STRD r4, r5, [sp, #48]
1071 LDRD r4, r5, [sp, #56]
1072 LSRS r6, r4, #1
1073 LSRS r7, r5, #1
1074 ORR r7, r7, r4, LSL #31
1075 ORR r6, r6, r5, LSL #31
1076 LSRS r8, r4, #8
1077 LSRS r9, r5, #8
1078 ORR r9, r9, r4, LSL #24
1079 ORR r8, r8, r5, LSL #24
1080 EOR r7, r7, r9
1081 EOR r6, r6, r8
1082 LSRS r8, r4, #7
1083 LSRS r9, r5, #7
1084 ORR r8, r8, r5, LSL #25
1085 EOR r7, r7, r9
1086 EOR r6, r6, r8
1087 LDRD r4, r5, [sp, #48]
1088 ADDS r4, r4, r6
1089 ADC r5, r5, r7
1090 STRD r4, r5, [sp, #48]
1091 /* Round 7 */
1092 LDRD r4, r5, [r0, #40]
1093 LSRS r6, r4, #14
1094 LSRS r7, r5, #14
1095 ORR r7, r7, r4, LSL #18
1096 ORR r6, r6, r5, LSL #18
1097 LSRS r8, r4, #18
1098 LSRS r9, r5, #18
1099 ORR r9, r9, r4, LSL #14
1100 ORR r8, r8, r5, LSL #14
1101 EOR r6, r6, r8
1102 EOR r7, r7, r9
1103 LSLS r8, r4, #23
1104 LSLS r9, r5, #23
1105 ORR r9, r9, r4, LSR #9
1106 ORR r8, r8, r5, LSR #9
1107 LDRD r4, r5, [r0]
1108 EOR r6, r6, r8
1109 EOR r7, r7, r9
1110 ADDS r4, r4, r6
1111 ADC r5, r5, r7
1112 STRD r4, r5, [r0]
1113 LDRD r4, r5, [r0, #40]
1114 LDRD r6, r7, [r0, #48]
1115 LDRD r8, r9, [r0, #56]
1116 EOR r6, r6, r8
1117 EOR r7, r7, r9
1118 AND r6, r6, r4
1119 AND r7, r7, r5
1120 EOR r6, r6, r8
1121 EOR r7, r7, r9
1122 LDRD r4, r5, [r0]
1123 LDRD r8, r9, [sp, #56]
1124 ADDS r4, r4, r6
1125 ADC r5, r5, r7
1126 LDRD r6, r7, [r3, #56]
1127 ADDS r4, r4, r8
1128 ADC r5, r5, r9
1129 LDRD r8, r9, [r0, #32]
1130 ADDS r4, r4, r6
1131 ADC r5, r5, r7
1132 STRD r4, r5, [r0]
1133 ADDS r8, r8, r4
1134 ADC r9, r9, r5
1135 LDRD r4, r5, [r0, #8]
1136 STRD r8, r9, [r0, #32]
1137 LSRS r6, r4, #28
1138 LSRS r7, r5, #28
1139 ORR r7, r7, r4, LSL #4
1140 ORR r6, r6, r5, LSL #4
1141 LSLS r8, r4, #30
1142 LSLS r9, r5, #30
1143 ORR r9, r9, r4, LSR #2
1144 ORR r8, r8, r5, LSR #2
1145 EOR r6, r6, r8
1146 EOR r7, r7, r9
1147 LSLS r8, r4, #25
1148 LSLS r9, r5, #25
1149 ORR r9, r9, r4, LSR #7
1150 ORR r8, r8, r5, LSR #7
1151 LDRD r4, r5, [r0]
1152 EOR r6, r6, r8
1153 EOR r7, r7, r9
1154 ADDS r4, r4, r6
1155 ADC r5, r5, r7
1156 LDRD r8, r9, [r0, #8]
1157 LDRD r6, r7, [r0, #16]
1158 STRD r4, r5, [r0]
1159 EOR r8, r8, r6
1160 EOR r9, r9, r7
1161 AND r10, r10, r8
1162 AND r11, r11, r9
1163 EOR r10, r10, r6
1164 EOR r11, r11, r7
1165 LDRD r6, r7, [r0]
1166 ADDS r6, r6, r10
1167 ADC r7, r7, r11
1168 STRD r6, r7, [r0]
1169 MOV r10, r8
1170 MOV r11, r9
1171 /* Calc new W[7] */
1172 LDRD r4, r5, [sp, #40]
1173 LSRS r6, r4, #19
1174 LSRS r7, r5, #19
1175 ORR r7, r7, r4, LSL #13
1176 ORR r6, r6, r5, LSL #13
1177 LSLS r8, r4, #3
1178 LSLS r9, r5, #3
1179 ORR r9, r9, r4, LSR #29
1180 ORR r8, r8, r5, LSR #29
1181 EOR r7, r7, r9
1182 EOR r6, r6, r8
1183 LSRS r8, r4, #6
1184 LSRS r9, r5, #6
1185 ORR r8, r8, r5, LSL #26
1186 EOR r7, r7, r9
1187 EOR r6, r6, r8
1188 LDRD r4, r5, [sp, #56]
1189 LDRD r8, r9, [sp]
1190 ADDS r4, r4, r6
1191 ADC r5, r5, r7
1192 ADDS r4, r4, r8
1193 ADC r5, r5, r9
1194 STRD r4, r5, [sp, #56]
1195 LDRD r4, r5, [sp, #64]
1196 LSRS r6, r4, #1
1197 LSRS r7, r5, #1
1198 ORR r7, r7, r4, LSL #31
1199 ORR r6, r6, r5, LSL #31
1200 LSRS r8, r4, #8
1201 LSRS r9, r5, #8
1202 ORR r9, r9, r4, LSL #24
1203 ORR r8, r8, r5, LSL #24
1204 EOR r7, r7, r9
1205 EOR r6, r6, r8
1206 LSRS r8, r4, #7
1207 LSRS r9, r5, #7
1208 ORR r8, r8, r5, LSL #25
1209 EOR r7, r7, r9
1210 EOR r6, r6, r8
1211 LDRD r4, r5, [sp, #56]
1212 ADDS r4, r4, r6
1213 ADC r5, r5, r7
1214 STRD r4, r5, [sp, #56]
1215 /* Round 8 */
1216 LDRD r4, r5, [r0, #32]
1217 LSRS r6, r4, #14
1218 LSRS r7, r5, #14
1219 ORR r7, r7, r4, LSL #18
1220 ORR r6, r6, r5, LSL #18
1221 LSRS r8, r4, #18
1222 LSRS r9, r5, #18
1223 ORR r9, r9, r4, LSL #14
1224 ORR r8, r8, r5, LSL #14
1225 EOR r6, r6, r8
1226 EOR r7, r7, r9
1227 LSLS r8, r4, #23
1228 LSLS r9, r5, #23
1229 ORR r9, r9, r4, LSR #9
1230 ORR r8, r8, r5, LSR #9
1231 LDRD r4, r5, [r0, #56]
1232 EOR r6, r6, r8
1233 EOR r7, r7, r9
1234 ADDS r4, r4, r6
1235 ADC r5, r5, r7
1236 STRD r4, r5, [r0, #56]
1237 LDRD r4, r5, [r0, #32]
1238 LDRD r6, r7, [r0, #40]
1239 LDRD r8, r9, [r0, #48]
1240 EOR r6, r6, r8
1241 EOR r7, r7, r9
1242 AND r6, r6, r4
1243 AND r7, r7, r5
1244 EOR r6, r6, r8
1245 EOR r7, r7, r9
1246 LDRD r4, r5, [r0, #56]
1247 LDRD r8, r9, [sp, #64]
1248 ADDS r4, r4, r6
1249 ADC r5, r5, r7
1250 LDRD r6, r7, [r3, #64]
1251 ADDS r4, r4, r8
1252 ADC r5, r5, r9
1253 LDRD r8, r9, [r0, #24]
1254 ADDS r4, r4, r6
1255 ADC r5, r5, r7
1256 STRD r4, r5, [r0, #56]
1257 ADDS r8, r8, r4
1258 ADC r9, r9, r5
1259 LDRD r4, r5, [r0]
1260 STRD r8, r9, [r0, #24]
1261 LSRS r6, r4, #28
1262 LSRS r7, r5, #28
1263 ORR r7, r7, r4, LSL #4
1264 ORR r6, r6, r5, LSL #4
1265 LSLS r8, r4, #30
1266 LSLS r9, r5, #30
1267 ORR r9, r9, r4, LSR #2
1268 ORR r8, r8, r5, LSR #2
1269 EOR r6, r6, r8
1270 EOR r7, r7, r9
1271 LSLS r8, r4, #25
1272 LSLS r9, r5, #25
1273 ORR r9, r9, r4, LSR #7
1274 ORR r8, r8, r5, LSR #7
1275 LDRD r4, r5, [r0, #56]
1276 EOR r6, r6, r8
1277 EOR r7, r7, r9
1278 ADDS r4, r4, r6
1279 ADC r5, r5, r7
1280 LDRD r8, r9, [r0]
1281 LDRD r6, r7, [r0, #8]
1282 STRD r4, r5, [r0, #56]
1283 EOR r8, r8, r6
1284 EOR r9, r9, r7
1285 AND r10, r10, r8
1286 AND r11, r11, r9
1287 EOR r10, r10, r6
1288 EOR r11, r11, r7
1289 LDRD r6, r7, [r0, #56]
1290 ADDS r6, r6, r10
1291 ADC r7, r7, r11
1292 STRD r6, r7, [r0, #56]
1293 MOV r10, r8
1294 MOV r11, r9
1295 /* Calc new W[8] */
1296 LDRD r4, r5, [sp, #48]
1297 LSRS r6, r4, #19
1298 LSRS r7, r5, #19
1299 ORR r7, r7, r4, LSL #13
1300 ORR r6, r6, r5, LSL #13
1301 LSLS r8, r4, #3
1302 LSLS r9, r5, #3
1303 ORR r9, r9, r4, LSR #29
1304 ORR r8, r8, r5, LSR #29
1305 EOR r7, r7, r9
1306 EOR r6, r6, r8
1307 LSRS r8, r4, #6
1308 LSRS r9, r5, #6
1309 ORR r8, r8, r5, LSL #26
1310 EOR r7, r7, r9
1311 EOR r6, r6, r8
1312 LDRD r4, r5, [sp, #64]
1313 LDRD r8, r9, [sp, #8]
1314 ADDS r4, r4, r6
1315 ADC r5, r5, r7
1316 ADDS r4, r4, r8
1317 ADC r5, r5, r9
1318 STRD r4, r5, [sp, #64]
1319 LDRD r4, r5, [sp, #72]
1320 LSRS r6, r4, #1
1321 LSRS r7, r5, #1
1322 ORR r7, r7, r4, LSL #31
1323 ORR r6, r6, r5, LSL #31
1324 LSRS r8, r4, #8
1325 LSRS r9, r5, #8
1326 ORR r9, r9, r4, LSL #24
1327 ORR r8, r8, r5, LSL #24
1328 EOR r7, r7, r9
1329 EOR r6, r6, r8
1330 LSRS r8, r4, #7
1331 LSRS r9, r5, #7
1332 ORR r8, r8, r5, LSL #25
1333 EOR r7, r7, r9
1334 EOR r6, r6, r8
1335 LDRD r4, r5, [sp, #64]
1336 ADDS r4, r4, r6
1337 ADC r5, r5, r7
1338 STRD r4, r5, [sp, #64]
1339 /* Round 9 */
1340 LDRD r4, r5, [r0, #24]
1341 LSRS r6, r4, #14
1342 LSRS r7, r5, #14
1343 ORR r7, r7, r4, LSL #18
1344 ORR r6, r6, r5, LSL #18
1345 LSRS r8, r4, #18
1346 LSRS r9, r5, #18
1347 ORR r9, r9, r4, LSL #14
1348 ORR r8, r8, r5, LSL #14
1349 EOR r6, r6, r8
1350 EOR r7, r7, r9
1351 LSLS r8, r4, #23
1352 LSLS r9, r5, #23
1353 ORR r9, r9, r4, LSR #9
1354 ORR r8, r8, r5, LSR #9
1355 LDRD r4, r5, [r0, #48]
1356 EOR r6, r6, r8
1357 EOR r7, r7, r9
1358 ADDS r4, r4, r6
1359 ADC r5, r5, r7
1360 STRD r4, r5, [r0, #48]
1361 LDRD r4, r5, [r0, #24]
1362 LDRD r6, r7, [r0, #32]
1363 LDRD r8, r9, [r0, #40]
1364 EOR r6, r6, r8
1365 EOR r7, r7, r9
1366 AND r6, r6, r4
1367 AND r7, r7, r5
1368 EOR r6, r6, r8
1369 EOR r7, r7, r9
1370 LDRD r4, r5, [r0, #48]
1371 LDRD r8, r9, [sp, #72]
1372 ADDS r4, r4, r6
1373 ADC r5, r5, r7
1374 LDRD r6, r7, [r3, #72]
1375 ADDS r4, r4, r8
1376 ADC r5, r5, r9
1377 LDRD r8, r9, [r0, #16]
1378 ADDS r4, r4, r6
1379 ADC r5, r5, r7
1380 STRD r4, r5, [r0, #48]
1381 ADDS r8, r8, r4
1382 ADC r9, r9, r5
1383 LDRD r4, r5, [r0, #56]
1384 STRD r8, r9, [r0, #16]
1385 LSRS r6, r4, #28
1386 LSRS r7, r5, #28
1387 ORR r7, r7, r4, LSL #4
1388 ORR r6, r6, r5, LSL #4
1389 LSLS r8, r4, #30
1390 LSLS r9, r5, #30
1391 ORR r9, r9, r4, LSR #2
1392 ORR r8, r8, r5, LSR #2
1393 EOR r6, r6, r8
1394 EOR r7, r7, r9
1395 LSLS r8, r4, #25
1396 LSLS r9, r5, #25
1397 ORR r9, r9, r4, LSR #7
1398 ORR r8, r8, r5, LSR #7
1399 LDRD r4, r5, [r0, #48]
1400 EOR r6, r6, r8
1401 EOR r7, r7, r9
1402 ADDS r4, r4, r6
1403 ADC r5, r5, r7
1404 LDRD r8, r9, [r0, #56]
1405 LDRD r6, r7, [r0]
1406 STRD r4, r5, [r0, #48]
1407 EOR r8, r8, r6
1408 EOR r9, r9, r7
1409 AND r10, r10, r8
1410 AND r11, r11, r9
1411 EOR r10, r10, r6
1412 EOR r11, r11, r7
1413 LDRD r6, r7, [r0, #48]
1414 ADDS r6, r6, r10
1415 ADC r7, r7, r11
1416 STRD r6, r7, [r0, #48]
1417 MOV r10, r8
1418 MOV r11, r9
1419 /* Calc new W[9] */
1420 LDRD r4, r5, [sp, #56]
1421 LSRS r6, r4, #19
1422 LSRS r7, r5, #19
1423 ORR r7, r7, r4, LSL #13
1424 ORR r6, r6, r5, LSL #13
1425 LSLS r8, r4, #3
1426 LSLS r9, r5, #3
1427 ORR r9, r9, r4, LSR #29
1428 ORR r8, r8, r5, LSR #29
1429 EOR r7, r7, r9
1430 EOR r6, r6, r8
1431 LSRS r8, r4, #6
1432 LSRS r9, r5, #6
1433 ORR r8, r8, r5, LSL #26
1434 EOR r7, r7, r9
1435 EOR r6, r6, r8
1436 LDRD r4, r5, [sp, #72]
1437 LDRD r8, r9, [sp, #16]
1438 ADDS r4, r4, r6
1439 ADC r5, r5, r7
1440 ADDS r4, r4, r8
1441 ADC r5, r5, r9
1442 STRD r4, r5, [sp, #72]
1443 LDRD r4, r5, [sp, #80]
1444 LSRS r6, r4, #1
1445 LSRS r7, r5, #1
1446 ORR r7, r7, r4, LSL #31
1447 ORR r6, r6, r5, LSL #31
1448 LSRS r8, r4, #8
1449 LSRS r9, r5, #8
1450 ORR r9, r9, r4, LSL #24
1451 ORR r8, r8, r5, LSL #24
1452 EOR r7, r7, r9
1453 EOR r6, r6, r8
1454 LSRS r8, r4, #7
1455 LSRS r9, r5, #7
1456 ORR r8, r8, r5, LSL #25
1457 EOR r7, r7, r9
1458 EOR r6, r6, r8
1459 LDRD r4, r5, [sp, #72]
1460 ADDS r4, r4, r6
1461 ADC r5, r5, r7
1462 STRD r4, r5, [sp, #72]
1463 /* Round 10 */
1464 LDRD r4, r5, [r0, #16]
1465 LSRS r6, r4, #14
1466 LSRS r7, r5, #14
1467 ORR r7, r7, r4, LSL #18
1468 ORR r6, r6, r5, LSL #18
1469 LSRS r8, r4, #18
1470 LSRS r9, r5, #18
1471 ORR r9, r9, r4, LSL #14
1472 ORR r8, r8, r5, LSL #14
1473 EOR r6, r6, r8
1474 EOR r7, r7, r9
1475 LSLS r8, r4, #23
1476 LSLS r9, r5, #23
1477 ORR r9, r9, r4, LSR #9
1478 ORR r8, r8, r5, LSR #9
1479 LDRD r4, r5, [r0, #40]
1480 EOR r6, r6, r8
1481 EOR r7, r7, r9
1482 ADDS r4, r4, r6
1483 ADC r5, r5, r7
1484 STRD r4, r5, [r0, #40]
1485 LDRD r4, r5, [r0, #16]
1486 LDRD r6, r7, [r0, #24]
1487 LDRD r8, r9, [r0, #32]
1488 EOR r6, r6, r8
1489 EOR r7, r7, r9
1490 AND r6, r6, r4
1491 AND r7, r7, r5
1492 EOR r6, r6, r8
1493 EOR r7, r7, r9
1494 LDRD r4, r5, [r0, #40]
1495 LDRD r8, r9, [sp, #80]
1496 ADDS r4, r4, r6
1497 ADC r5, r5, r7
1498 LDRD r6, r7, [r3, #80]
1499 ADDS r4, r4, r8
1500 ADC r5, r5, r9
1501 LDRD r8, r9, [r0, #8]
1502 ADDS r4, r4, r6
1503 ADC r5, r5, r7
1504 STRD r4, r5, [r0, #40]
1505 ADDS r8, r8, r4
1506 ADC r9, r9, r5
1507 LDRD r4, r5, [r0, #48]
1508 STRD r8, r9, [r0, #8]
1509 LSRS r6, r4, #28
1510 LSRS r7, r5, #28
1511 ORR r7, r7, r4, LSL #4
1512 ORR r6, r6, r5, LSL #4
1513 LSLS r8, r4, #30
1514 LSLS r9, r5, #30
1515 ORR r9, r9, r4, LSR #2
1516 ORR r8, r8, r5, LSR #2
1517 EOR r6, r6, r8
1518 EOR r7, r7, r9
1519 LSLS r8, r4, #25
1520 LSLS r9, r5, #25
1521 ORR r9, r9, r4, LSR #7
1522 ORR r8, r8, r5, LSR #7
1523 LDRD r4, r5, [r0, #40]
1524 EOR r6, r6, r8
1525 EOR r7, r7, r9
1526 ADDS r4, r4, r6
1527 ADC r5, r5, r7
1528 LDRD r8, r9, [r0, #48]
1529 LDRD r6, r7, [r0, #56]
1530 STRD r4, r5, [r0, #40]
1531 EOR r8, r8, r6
1532 EOR r9, r9, r7
1533 AND r10, r10, r8
1534 AND r11, r11, r9
1535 EOR r10, r10, r6
1536 EOR r11, r11, r7
1537 LDRD r6, r7, [r0, #40]
1538 ADDS r6, r6, r10
1539 ADC r7, r7, r11
1540 STRD r6, r7, [r0, #40]
1541 MOV r10, r8
1542 MOV r11, r9
1543 /* Calc new W[10] */
1544 LDRD r4, r5, [sp, #64]
1545 LSRS r6, r4, #19
1546 LSRS r7, r5, #19
1547 ORR r7, r7, r4, LSL #13
1548 ORR r6, r6, r5, LSL #13
1549 LSLS r8, r4, #3
1550 LSLS r9, r5, #3
1551 ORR r9, r9, r4, LSR #29
1552 ORR r8, r8, r5, LSR #29
1553 EOR r7, r7, r9
1554 EOR r6, r6, r8
1555 LSRS r8, r4, #6
1556 LSRS r9, r5, #6
1557 ORR r8, r8, r5, LSL #26
1558 EOR r7, r7, r9
1559 EOR r6, r6, r8
1560 LDRD r4, r5, [sp, #80]
1561 LDRD r8, r9, [sp, #24]
1562 ADDS r4, r4, r6
1563 ADC r5, r5, r7
1564 ADDS r4, r4, r8
1565 ADC r5, r5, r9
1566 STRD r4, r5, [sp, #80]
1567 LDRD r4, r5, [sp, #88]
1568 LSRS r6, r4, #1
1569 LSRS r7, r5, #1
1570 ORR r7, r7, r4, LSL #31
1571 ORR r6, r6, r5, LSL #31
1572 LSRS r8, r4, #8
1573 LSRS r9, r5, #8
1574 ORR r9, r9, r4, LSL #24
1575 ORR r8, r8, r5, LSL #24
1576 EOR r7, r7, r9
1577 EOR r6, r6, r8
1578 LSRS r8, r4, #7
1579 LSRS r9, r5, #7
1580 ORR r8, r8, r5, LSL #25
1581 EOR r7, r7, r9
1582 EOR r6, r6, r8
1583 LDRD r4, r5, [sp, #80]
1584 ADDS r4, r4, r6
1585 ADC r5, r5, r7
1586 STRD r4, r5, [sp, #80]
1587 /* Round 11 */
1588 LDRD r4, r5, [r0, #8]
1589 LSRS r6, r4, #14
1590 LSRS r7, r5, #14
1591 ORR r7, r7, r4, LSL #18
1592 ORR r6, r6, r5, LSL #18
1593 LSRS r8, r4, #18
1594 LSRS r9, r5, #18
1595 ORR r9, r9, r4, LSL #14
1596 ORR r8, r8, r5, LSL #14
1597 EOR r6, r6, r8
1598 EOR r7, r7, r9
1599 LSLS r8, r4, #23
1600 LSLS r9, r5, #23
1601 ORR r9, r9, r4, LSR #9
1602 ORR r8, r8, r5, LSR #9
1603 LDRD r4, r5, [r0, #32]
1604 EOR r6, r6, r8
1605 EOR r7, r7, r9
1606 ADDS r4, r4, r6
1607 ADC r5, r5, r7
1608 STRD r4, r5, [r0, #32]
1609 LDRD r4, r5, [r0, #8]
1610 LDRD r6, r7, [r0, #16]
1611 LDRD r8, r9, [r0, #24]
1612 EOR r6, r6, r8
1613 EOR r7, r7, r9
1614 AND r6, r6, r4
1615 AND r7, r7, r5
1616 EOR r6, r6, r8
1617 EOR r7, r7, r9
1618 LDRD r4, r5, [r0, #32]
1619 LDRD r8, r9, [sp, #88]
1620 ADDS r4, r4, r6
1621 ADC r5, r5, r7
1622 LDRD r6, r7, [r3, #88]
1623 ADDS r4, r4, r8
1624 ADC r5, r5, r9
1625 LDRD r8, r9, [r0]
1626 ADDS r4, r4, r6
1627 ADC r5, r5, r7
1628 STRD r4, r5, [r0, #32]
1629 ADDS r8, r8, r4
1630 ADC r9, r9, r5
1631 LDRD r4, r5, [r0, #40]
1632 STRD r8, r9, [r0]
1633 LSRS r6, r4, #28
1634 LSRS r7, r5, #28
1635 ORR r7, r7, r4, LSL #4
1636 ORR r6, r6, r5, LSL #4
1637 LSLS r8, r4, #30
1638 LSLS r9, r5, #30
1639 ORR r9, r9, r4, LSR #2
1640 ORR r8, r8, r5, LSR #2
1641 EOR r6, r6, r8
1642 EOR r7, r7, r9
1643 LSLS r8, r4, #25
1644 LSLS r9, r5, #25
1645 ORR r9, r9, r4, LSR #7
1646 ORR r8, r8, r5, LSR #7
1647 LDRD r4, r5, [r0, #32]
1648 EOR r6, r6, r8
1649 EOR r7, r7, r9
1650 ADDS r4, r4, r6
1651 ADC r5, r5, r7
1652 LDRD r8, r9, [r0, #40]
1653 LDRD r6, r7, [r0, #48]
1654 STRD r4, r5, [r0, #32]
1655 EOR r8, r8, r6
1656 EOR r9, r9, r7
1657 AND r10, r10, r8
1658 AND r11, r11, r9
1659 EOR r10, r10, r6
1660 EOR r11, r11, r7
1661 LDRD r6, r7, [r0, #32]
1662 ADDS r6, r6, r10
1663 ADC r7, r7, r11
1664 STRD r6, r7, [r0, #32]
1665 MOV r10, r8
1666 MOV r11, r9
1667 /* Calc new W[11] */
1668 LDRD r4, r5, [sp, #72]
1669 LSRS r6, r4, #19
1670 LSRS r7, r5, #19
1671 ORR r7, r7, r4, LSL #13
1672 ORR r6, r6, r5, LSL #13
1673 LSLS r8, r4, #3
1674 LSLS r9, r5, #3
1675 ORR r9, r9, r4, LSR #29
1676 ORR r8, r8, r5, LSR #29
1677 EOR r7, r7, r9
1678 EOR r6, r6, r8
1679 LSRS r8, r4, #6
1680 LSRS r9, r5, #6
1681 ORR r8, r8, r5, LSL #26
1682 EOR r7, r7, r9
1683 EOR r6, r6, r8
1684 LDRD r4, r5, [sp, #88]
1685 LDRD r8, r9, [sp, #32]
1686 ADDS r4, r4, r6
1687 ADC r5, r5, r7
1688 ADDS r4, r4, r8
1689 ADC r5, r5, r9
1690 STRD r4, r5, [sp, #88]
1691 LDRD r4, r5, [sp, #96]
1692 LSRS r6, r4, #1
1693 LSRS r7, r5, #1
1694 ORR r7, r7, r4, LSL #31
1695 ORR r6, r6, r5, LSL #31
1696 LSRS r8, r4, #8
1697 LSRS r9, r5, #8
1698 ORR r9, r9, r4, LSL #24
1699 ORR r8, r8, r5, LSL #24
1700 EOR r7, r7, r9
1701 EOR r6, r6, r8
1702 LSRS r8, r4, #7
1703 LSRS r9, r5, #7
1704 ORR r8, r8, r5, LSL #25
1705 EOR r7, r7, r9
1706 EOR r6, r6, r8
1707 LDRD r4, r5, [sp, #88]
1708 ADDS r4, r4, r6
1709 ADC r5, r5, r7
1710 STRD r4, r5, [sp, #88]
1711 /* Round 12 */
1712 LDRD r4, r5, [r0]
1713 LSRS r6, r4, #14
1714 LSRS r7, r5, #14
1715 ORR r7, r7, r4, LSL #18
1716 ORR r6, r6, r5, LSL #18
1717 LSRS r8, r4, #18
1718 LSRS r9, r5, #18
1719 ORR r9, r9, r4, LSL #14
1720 ORR r8, r8, r5, LSL #14
1721 EOR r6, r6, r8
1722 EOR r7, r7, r9
1723 LSLS r8, r4, #23
1724 LSLS r9, r5, #23
1725 ORR r9, r9, r4, LSR #9
1726 ORR r8, r8, r5, LSR #9
1727 LDRD r4, r5, [r0, #24]
1728 EOR r6, r6, r8
1729 EOR r7, r7, r9
1730 ADDS r4, r4, r6
1731 ADC r5, r5, r7
1732 STRD r4, r5, [r0, #24]
1733 LDRD r4, r5, [r0]
1734 LDRD r6, r7, [r0, #8]
1735 LDRD r8, r9, [r0, #16]
1736 EOR r6, r6, r8
1737 EOR r7, r7, r9
1738 AND r6, r6, r4
1739 AND r7, r7, r5
1740 EOR r6, r6, r8
1741 EOR r7, r7, r9
1742 LDRD r4, r5, [r0, #24]
1743 LDRD r8, r9, [sp, #96]
1744 ADDS r4, r4, r6
1745 ADC r5, r5, r7
1746 LDRD r6, r7, [r3, #96]
1747 ADDS r4, r4, r8
1748 ADC r5, r5, r9
1749 LDRD r8, r9, [r0, #56]
1750 ADDS r4, r4, r6
1751 ADC r5, r5, r7
1752 STRD r4, r5, [r0, #24]
1753 ADDS r8, r8, r4
1754 ADC r9, r9, r5
1755 LDRD r4, r5, [r0, #32]
1756 STRD r8, r9, [r0, #56]
1757 LSRS r6, r4, #28
1758 LSRS r7, r5, #28
1759 ORR r7, r7, r4, LSL #4
1760 ORR r6, r6, r5, LSL #4
1761 LSLS r8, r4, #30
1762 LSLS r9, r5, #30
1763 ORR r9, r9, r4, LSR #2
1764 ORR r8, r8, r5, LSR #2
1765 EOR r6, r6, r8
1766 EOR r7, r7, r9
1767 LSLS r8, r4, #25
1768 LSLS r9, r5, #25
1769 ORR r9, r9, r4, LSR #7
1770 ORR r8, r8, r5, LSR #7
1771 LDRD r4, r5, [r0, #24]
1772 EOR r6, r6, r8
1773 EOR r7, r7, r9
1774 ADDS r4, r4, r6
1775 ADC r5, r5, r7
1776 LDRD r8, r9, [r0, #32]
1777 LDRD r6, r7, [r0, #40]
1778 STRD r4, r5, [r0, #24]
1779 EOR r8, r8, r6
1780 EOR r9, r9, r7
1781 AND r10, r10, r8
1782 AND r11, r11, r9
1783 EOR r10, r10, r6
1784 EOR r11, r11, r7
1785 LDRD r6, r7, [r0, #24]
1786 ADDS r6, r6, r10
1787 ADC r7, r7, r11
1788 STRD r6, r7, [r0, #24]
1789 MOV r10, r8
1790 MOV r11, r9
1791 /* Calc new W[12] */
1792 LDRD r4, r5, [sp, #80]
1793 LSRS r6, r4, #19
1794 LSRS r7, r5, #19
1795 ORR r7, r7, r4, LSL #13
1796 ORR r6, r6, r5, LSL #13
1797 LSLS r8, r4, #3
1798 LSLS r9, r5, #3
1799 ORR r9, r9, r4, LSR #29
1800 ORR r8, r8, r5, LSR #29
1801 EOR r7, r7, r9
1802 EOR r6, r6, r8
1803 LSRS r8, r4, #6
1804 LSRS r9, r5, #6
1805 ORR r8, r8, r5, LSL #26
1806 EOR r7, r7, r9
1807 EOR r6, r6, r8
1808 LDRD r4, r5, [sp, #96]
1809 LDRD r8, r9, [sp, #40]
1810 ADDS r4, r4, r6
1811 ADC r5, r5, r7
1812 ADDS r4, r4, r8
1813 ADC r5, r5, r9
1814 STRD r4, r5, [sp, #96]
1815 LDRD r4, r5, [sp, #104]
1816 LSRS r6, r4, #1
1817 LSRS r7, r5, #1
1818 ORR r7, r7, r4, LSL #31
1819 ORR r6, r6, r5, LSL #31
1820 LSRS r8, r4, #8
1821 LSRS r9, r5, #8
1822 ORR r9, r9, r4, LSL #24
1823 ORR r8, r8, r5, LSL #24
1824 EOR r7, r7, r9
1825 EOR r6, r6, r8
1826 LSRS r8, r4, #7
1827 LSRS r9, r5, #7
1828 ORR r8, r8, r5, LSL #25
1829 EOR r7, r7, r9
1830 EOR r6, r6, r8
1831 LDRD r4, r5, [sp, #96]
1832 ADDS r4, r4, r6
1833 ADC r5, r5, r7
1834 STRD r4, r5, [sp, #96]
1835 /* Round 13 */
1836 LDRD r4, r5, [r0, #56]
1837 LSRS r6, r4, #14
1838 LSRS r7, r5, #14
1839 ORR r7, r7, r4, LSL #18
1840 ORR r6, r6, r5, LSL #18
1841 LSRS r8, r4, #18
1842 LSRS r9, r5, #18
1843 ORR r9, r9, r4, LSL #14
1844 ORR r8, r8, r5, LSL #14
1845 EOR r6, r6, r8
1846 EOR r7, r7, r9
1847 LSLS r8, r4, #23
1848 LSLS r9, r5, #23
1849 ORR r9, r9, r4, LSR #9
1850 ORR r8, r8, r5, LSR #9
1851 LDRD r4, r5, [r0, #16]
1852 EOR r6, r6, r8
1853 EOR r7, r7, r9
1854 ADDS r4, r4, r6
1855 ADC r5, r5, r7
1856 STRD r4, r5, [r0, #16]
1857 LDRD r4, r5, [r0, #56]
1858 LDRD r6, r7, [r0]
1859 LDRD r8, r9, [r0, #8]
1860 EOR r6, r6, r8
1861 EOR r7, r7, r9
1862 AND r6, r6, r4
1863 AND r7, r7, r5
1864 EOR r6, r6, r8
1865 EOR r7, r7, r9
1866 LDRD r4, r5, [r0, #16]
1867 LDRD r8, r9, [sp, #104]
1868 ADDS r4, r4, r6
1869 ADC r5, r5, r7
1870 LDRD r6, r7, [r3, #104]
1871 ADDS r4, r4, r8
1872 ADC r5, r5, r9
1873 LDRD r8, r9, [r0, #48]
1874 ADDS r4, r4, r6
1875 ADC r5, r5, r7
1876 STRD r4, r5, [r0, #16]
1877 ADDS r8, r8, r4
1878 ADC r9, r9, r5
1879 LDRD r4, r5, [r0, #24]
1880 STRD r8, r9, [r0, #48]
1881 LSRS r6, r4, #28
1882 LSRS r7, r5, #28
1883 ORR r7, r7, r4, LSL #4
1884 ORR r6, r6, r5, LSL #4
1885 LSLS r8, r4, #30
1886 LSLS r9, r5, #30
1887 ORR r9, r9, r4, LSR #2
1888 ORR r8, r8, r5, LSR #2
1889 EOR r6, r6, r8
1890 EOR r7, r7, r9
1891 LSLS r8, r4, #25
1892 LSLS r9, r5, #25
1893 ORR r9, r9, r4, LSR #7
1894 ORR r8, r8, r5, LSR #7
1895 LDRD r4, r5, [r0, #16]
1896 EOR r6, r6, r8
1897 EOR r7, r7, r9
1898 ADDS r4, r4, r6
1899 ADC r5, r5, r7
1900 LDRD r8, r9, [r0, #24]
1901 LDRD r6, r7, [r0, #32]
1902 STRD r4, r5, [r0, #16]
1903 EOR r8, r8, r6
1904 EOR r9, r9, r7
1905 AND r10, r10, r8
1906 AND r11, r11, r9
1907 EOR r10, r10, r6
1908 EOR r11, r11, r7
1909 LDRD r6, r7, [r0, #16]
1910 ADDS r6, r6, r10
1911 ADC r7, r7, r11
1912 STRD r6, r7, [r0, #16]
1913 MOV r10, r8
1914 MOV r11, r9
1915 /* Calc new W[13] */
1916 LDRD r4, r5, [sp, #88]
1917 LSRS r6, r4, #19
1918 LSRS r7, r5, #19
1919 ORR r7, r7, r4, LSL #13
1920 ORR r6, r6, r5, LSL #13
1921 LSLS r8, r4, #3
1922 LSLS r9, r5, #3
1923 ORR r9, r9, r4, LSR #29
1924 ORR r8, r8, r5, LSR #29
1925 EOR r7, r7, r9
1926 EOR r6, r6, r8
1927 LSRS r8, r4, #6
1928 LSRS r9, r5, #6
1929 ORR r8, r8, r5, LSL #26
1930 EOR r7, r7, r9
1931 EOR r6, r6, r8
1932 LDRD r4, r5, [sp, #104]
1933 LDRD r8, r9, [sp, #48]
1934 ADDS r4, r4, r6
1935 ADC r5, r5, r7
1936 ADDS r4, r4, r8
1937 ADC r5, r5, r9
1938 STRD r4, r5, [sp, #104]
1939 LDRD r4, r5, [sp, #112]
1940 LSRS r6, r4, #1
1941 LSRS r7, r5, #1
1942 ORR r7, r7, r4, LSL #31
1943 ORR r6, r6, r5, LSL #31
1944 LSRS r8, r4, #8
1945 LSRS r9, r5, #8
1946 ORR r9, r9, r4, LSL #24
1947 ORR r8, r8, r5, LSL #24
1948 EOR r7, r7, r9
1949 EOR r6, r6, r8
1950 LSRS r8, r4, #7
1951 LSRS r9, r5, #7
1952 ORR r8, r8, r5, LSL #25
1953 EOR r7, r7, r9
1954 EOR r6, r6, r8
1955 LDRD r4, r5, [sp, #104]
1956 ADDS r4, r4, r6
1957 ADC r5, r5, r7
1958 STRD r4, r5, [sp, #104]
1959 /* Round 14 */
1960 LDRD r4, r5, [r0, #48]
1961 LSRS r6, r4, #14
1962 LSRS r7, r5, #14
1963 ORR r7, r7, r4, LSL #18
1964 ORR r6, r6, r5, LSL #18
1965 LSRS r8, r4, #18
1966 LSRS r9, r5, #18
1967 ORR r9, r9, r4, LSL #14
1968 ORR r8, r8, r5, LSL #14
1969 EOR r6, r6, r8
1970 EOR r7, r7, r9
1971 LSLS r8, r4, #23
1972 LSLS r9, r5, #23
1973 ORR r9, r9, r4, LSR #9
1974 ORR r8, r8, r5, LSR #9
1975 LDRD r4, r5, [r0, #8]
1976 EOR r6, r6, r8
1977 EOR r7, r7, r9
1978 ADDS r4, r4, r6
1979 ADC r5, r5, r7
1980 STRD r4, r5, [r0, #8]
1981 LDRD r4, r5, [r0, #48]
1982 LDRD r6, r7, [r0, #56]
1983 LDRD r8, r9, [r0]
1984 EOR r6, r6, r8
1985 EOR r7, r7, r9
1986 AND r6, r6, r4
1987 AND r7, r7, r5
1988 EOR r6, r6, r8
1989 EOR r7, r7, r9
1990 LDRD r4, r5, [r0, #8]
1991 LDRD r8, r9, [sp, #112]
1992 ADDS r4, r4, r6
1993 ADC r5, r5, r7
1994 LDRD r6, r7, [r3, #112]
1995 ADDS r4, r4, r8
1996 ADC r5, r5, r9
1997 LDRD r8, r9, [r0, #40]
1998 ADDS r4, r4, r6
1999 ADC r5, r5, r7
2000 STRD r4, r5, [r0, #8]
2001 ADDS r8, r8, r4
2002 ADC r9, r9, r5
2003 LDRD r4, r5, [r0, #16]
2004 STRD r8, r9, [r0, #40]
2005 LSRS r6, r4, #28
2006 LSRS r7, r5, #28
2007 ORR r7, r7, r4, LSL #4
2008 ORR r6, r6, r5, LSL #4
2009 LSLS r8, r4, #30
2010 LSLS r9, r5, #30
2011 ORR r9, r9, r4, LSR #2
2012 ORR r8, r8, r5, LSR #2
2013 EOR r6, r6, r8
2014 EOR r7, r7, r9
2015 LSLS r8, r4, #25
2016 LSLS r9, r5, #25
2017 ORR r9, r9, r4, LSR #7
2018 ORR r8, r8, r5, LSR #7
2019 LDRD r4, r5, [r0, #8]
2020 EOR r6, r6, r8
2021 EOR r7, r7, r9
2022 ADDS r4, r4, r6
2023 ADC r5, r5, r7
2024 LDRD r8, r9, [r0, #16]
2025 LDRD r6, r7, [r0, #24]
2026 STRD r4, r5, [r0, #8]
2027 EOR r8, r8, r6
2028 EOR r9, r9, r7
2029 AND r10, r10, r8
2030 AND r11, r11, r9
2031 EOR r10, r10, r6
2032 EOR r11, r11, r7
2033 LDRD r6, r7, [r0, #8]
2034 ADDS r6, r6, r10
2035 ADC r7, r7, r11
2036 STRD r6, r7, [r0, #8]
2037 MOV r10, r8
2038 MOV r11, r9
2039 /* Calc new W[14] */
2040 LDRD r4, r5, [sp, #96]
2041 LSRS r6, r4, #19
2042 LSRS r7, r5, #19
2043 ORR r7, r7, r4, LSL #13
2044 ORR r6, r6, r5, LSL #13
2045 LSLS r8, r4, #3
2046 LSLS r9, r5, #3
2047 ORR r9, r9, r4, LSR #29
2048 ORR r8, r8, r5, LSR #29
2049 EOR r7, r7, r9
2050 EOR r6, r6, r8
2051 LSRS r8, r4, #6
2052 LSRS r9, r5, #6
2053 ORR r8, r8, r5, LSL #26
2054 EOR r7, r7, r9
2055 EOR r6, r6, r8
2056 LDRD r4, r5, [sp, #112]
2057 LDRD r8, r9, [sp, #56]
2058 ADDS r4, r4, r6
2059 ADC r5, r5, r7
2060 ADDS r4, r4, r8
2061 ADC r5, r5, r9
2062 STRD r4, r5, [sp, #112]
2063 LDRD r4, r5, [sp, #120]
2064 LSRS r6, r4, #1
2065 LSRS r7, r5, #1
2066 ORR r7, r7, r4, LSL #31
2067 ORR r6, r6, r5, LSL #31
2068 LSRS r8, r4, #8
2069 LSRS r9, r5, #8
2070 ORR r9, r9, r4, LSL #24
2071 ORR r8, r8, r5, LSL #24
2072 EOR r7, r7, r9
2073 EOR r6, r6, r8
2074 LSRS r8, r4, #7
2075 LSRS r9, r5, #7
2076 ORR r8, r8, r5, LSL #25
2077 EOR r7, r7, r9
2078 EOR r6, r6, r8
2079 LDRD r4, r5, [sp, #112]
2080 ADDS r4, r4, r6
2081 ADC r5, r5, r7
2082 STRD r4, r5, [sp, #112]
2083 /* Round 15 */
2084 LDRD r4, r5, [r0, #40]
2085 LSRS r6, r4, #14
2086 LSRS r7, r5, #14
2087 ORR r7, r7, r4, LSL #18
2088 ORR r6, r6, r5, LSL #18
2089 LSRS r8, r4, #18
2090 LSRS r9, r5, #18
2091 ORR r9, r9, r4, LSL #14
2092 ORR r8, r8, r5, LSL #14
2093 EOR r6, r6, r8
2094 EOR r7, r7, r9
2095 LSLS r8, r4, #23
2096 LSLS r9, r5, #23
2097 ORR r9, r9, r4, LSR #9
2098 ORR r8, r8, r5, LSR #9
2099 LDRD r4, r5, [r0]
2100 EOR r6, r6, r8
2101 EOR r7, r7, r9
2102 ADDS r4, r4, r6
2103 ADC r5, r5, r7
2104 STRD r4, r5, [r0]
2105 LDRD r4, r5, [r0, #40]
2106 LDRD r6, r7, [r0, #48]
2107 LDRD r8, r9, [r0, #56]
2108 EOR r6, r6, r8
2109 EOR r7, r7, r9
2110 AND r6, r6, r4
2111 AND r7, r7, r5
2112 EOR r6, r6, r8
2113 EOR r7, r7, r9
2114 LDRD r4, r5, [r0]
2115 LDRD r8, r9, [sp, #120]
2116 ADDS r4, r4, r6
2117 ADC r5, r5, r7
2118 LDRD r6, r7, [r3, #120]
2119 ADDS r4, r4, r8
2120 ADC r5, r5, r9
2121 LDRD r8, r9, [r0, #32]
2122 ADDS r4, r4, r6
2123 ADC r5, r5, r7
2124 STRD r4, r5, [r0]
2125 ADDS r8, r8, r4
2126 ADC r9, r9, r5
2127 LDRD r4, r5, [r0, #8]
2128 STRD r8, r9, [r0, #32]
2129 LSRS r6, r4, #28
2130 LSRS r7, r5, #28
2131 ORR r7, r7, r4, LSL #4
2132 ORR r6, r6, r5, LSL #4
2133 LSLS r8, r4, #30
2134 LSLS r9, r5, #30
2135 ORR r9, r9, r4, LSR #2
2136 ORR r8, r8, r5, LSR #2
2137 EOR r6, r6, r8
2138 EOR r7, r7, r9
2139 LSLS r8, r4, #25
2140 LSLS r9, r5, #25
2141 ORR r9, r9, r4, LSR #7
2142 ORR r8, r8, r5, LSR #7
2143 LDRD r4, r5, [r0]
2144 EOR r6, r6, r8
2145 EOR r7, r7, r9
2146 ADDS r4, r4, r6
2147 ADC r5, r5, r7
2148 LDRD r8, r9, [r0, #8]
2149 LDRD r6, r7, [r0, #16]
2150 STRD r4, r5, [r0]
2151 EOR r8, r8, r6
2152 EOR r9, r9, r7
2153 AND r10, r10, r8
2154 AND r11, r11, r9
2155 EOR r10, r10, r6
2156 EOR r11, r11, r7
2157 LDRD r6, r7, [r0]
2158 ADDS r6, r6, r10
2159 ADC r7, r7, r11
2160 STRD r6, r7, [r0]
2161 MOV r10, r8
2162 MOV r11, r9
2163 /* Calc new W[15] */
2164 LDRD r4, r5, [sp, #104]
2165 LSRS r6, r4, #19
2166 LSRS r7, r5, #19
2167 ORR r7, r7, r4, LSL #13
2168 ORR r6, r6, r5, LSL #13
2169 LSLS r8, r4, #3
2170 LSLS r9, r5, #3
2171 ORR r9, r9, r4, LSR #29
2172 ORR r8, r8, r5, LSR #29
2173 EOR r7, r7, r9
2174 EOR r6, r6, r8
2175 LSRS r8, r4, #6
2176 LSRS r9, r5, #6
2177 ORR r8, r8, r5, LSL #26
2178 EOR r7, r7, r9
2179 EOR r6, r6, r8
2180 LDRD r4, r5, [sp, #120]
2181 LDRD r8, r9, [sp, #64]
2182 ADDS r4, r4, r6
2183 ADC r5, r5, r7
2184 ADDS r4, r4, r8
2185 ADC r5, r5, r9
2186 STRD r4, r5, [sp, #120]
2187 LDRD r4, r5, [sp]
2188 LSRS r6, r4, #1
2189 LSRS r7, r5, #1
2190 ORR r7, r7, r4, LSL #31
2191 ORR r6, r6, r5, LSL #31
2192 LSRS r8, r4, #8
2193 LSRS r9, r5, #8
2194 ORR r9, r9, r4, LSL #24
2195 ORR r8, r8, r5, LSL #24
2196 EOR r7, r7, r9
2197 EOR r6, r6, r8
2198 LSRS r8, r4, #7
2199 LSRS r9, r5, #7
2200 ORR r8, r8, r5, LSL #25
2201 EOR r7, r7, r9
2202 EOR r6, r6, r8
2203 LDRD r4, r5, [sp, #120]
2204 ADDS r4, r4, r6
2205 ADC r5, r5, r7
2206 STRD r4, r5, [sp, #120]
2207 ADD r3, r3, #0x80
2208 SUBS r12, r12, #0x1
2209#if defined(__GNUC__) || defined(__ICCARM__) || defined(__IAR_SYSTEMS_ICC__)
2210 BNE L_SHA512_transform_len_start
2211#else
2212 BNE.W L_SHA512_transform_len_start
2213#endif
2214 /* Round 0 */
2215 LDRD r4, r5, [r0, #32]
2216 LSRS r6, r4, #14
2217 LSRS r7, r5, #14
2218 ORR r7, r7, r4, LSL #18
2219 ORR r6, r6, r5, LSL #18
2220 LSRS r8, r4, #18
2221 LSRS r9, r5, #18
2222 ORR r9, r9, r4, LSL #14
2223 ORR r8, r8, r5, LSL #14
2224 EOR r6, r6, r8
2225 EOR r7, r7, r9
2226 LSLS r8, r4, #23
2227 LSLS r9, r5, #23
2228 ORR r9, r9, r4, LSR #9
2229 ORR r8, r8, r5, LSR #9
2230 LDRD r4, r5, [r0, #56]
2231 EOR r6, r6, r8
2232 EOR r7, r7, r9
2233 ADDS r4, r4, r6
2234 ADC r5, r5, r7
2235 STRD r4, r5, [r0, #56]
2236 LDRD r4, r5, [r0, #32]
2237 LDRD r6, r7, [r0, #40]
2238 LDRD r8, r9, [r0, #48]
2239 EOR r6, r6, r8
2240 EOR r7, r7, r9
2241 AND r6, r6, r4
2242 AND r7, r7, r5
2243 EOR r6, r6, r8
2244 EOR r7, r7, r9
2245 LDRD r4, r5, [r0, #56]
2246 LDRD r8, r9, [sp]
2247 ADDS r4, r4, r6
2248 ADC r5, r5, r7
2249 LDRD r6, r7, [r3]
2250 ADDS r4, r4, r8
2251 ADC r5, r5, r9
2252 LDRD r8, r9, [r0, #24]
2253 ADDS r4, r4, r6
2254 ADC r5, r5, r7
2255 STRD r4, r5, [r0, #56]
2256 ADDS r8, r8, r4
2257 ADC r9, r9, r5
2258 LDRD r4, r5, [r0]
2259 STRD r8, r9, [r0, #24]
2260 LSRS r6, r4, #28
2261 LSRS r7, r5, #28
2262 ORR r7, r7, r4, LSL #4
2263 ORR r6, r6, r5, LSL #4
2264 LSLS r8, r4, #30
2265 LSLS r9, r5, #30
2266 ORR r9, r9, r4, LSR #2
2267 ORR r8, r8, r5, LSR #2
2268 EOR r6, r6, r8
2269 EOR r7, r7, r9
2270 LSLS r8, r4, #25
2271 LSLS r9, r5, #25
2272 ORR r9, r9, r4, LSR #7
2273 ORR r8, r8, r5, LSR #7
2274 LDRD r4, r5, [r0, #56]
2275 EOR r6, r6, r8
2276 EOR r7, r7, r9
2277 ADDS r4, r4, r6
2278 ADC r5, r5, r7
2279 LDRD r8, r9, [r0]
2280 LDRD r6, r7, [r0, #8]
2281 STRD r4, r5, [r0, #56]
2282 EOR r8, r8, r6
2283 EOR r9, r9, r7
2284 AND r10, r10, r8
2285 AND r11, r11, r9
2286 EOR r10, r10, r6
2287 EOR r11, r11, r7
2288 LDRD r6, r7, [r0, #56]
2289 ADDS r6, r6, r10
2290 ADC r7, r7, r11
2291 STRD r6, r7, [r0, #56]
2292 MOV r10, r8
2293 MOV r11, r9
2294 /* Round 1 */
2295 LDRD r4, r5, [r0, #24]
2296 LSRS r6, r4, #14
2297 LSRS r7, r5, #14
2298 ORR r7, r7, r4, LSL #18
2299 ORR r6, r6, r5, LSL #18
2300 LSRS r8, r4, #18
2301 LSRS r9, r5, #18
2302 ORR r9, r9, r4, LSL #14
2303 ORR r8, r8, r5, LSL #14
2304 EOR r6, r6, r8
2305 EOR r7, r7, r9
2306 LSLS r8, r4, #23
2307 LSLS r9, r5, #23
2308 ORR r9, r9, r4, LSR #9
2309 ORR r8, r8, r5, LSR #9
2310 LDRD r4, r5, [r0, #48]
2311 EOR r6, r6, r8
2312 EOR r7, r7, r9
2313 ADDS r4, r4, r6
2314 ADC r5, r5, r7
2315 STRD r4, r5, [r0, #48]
2316 LDRD r4, r5, [r0, #24]
2317 LDRD r6, r7, [r0, #32]
2318 LDRD r8, r9, [r0, #40]
2319 EOR r6, r6, r8
2320 EOR r7, r7, r9
2321 AND r6, r6, r4
2322 AND r7, r7, r5
2323 EOR r6, r6, r8
2324 EOR r7, r7, r9
2325 LDRD r4, r5, [r0, #48]
2326 LDRD r8, r9, [sp, #8]
2327 ADDS r4, r4, r6
2328 ADC r5, r5, r7
2329 LDRD r6, r7, [r3, #8]
2330 ADDS r4, r4, r8
2331 ADC r5, r5, r9
2332 LDRD r8, r9, [r0, #16]
2333 ADDS r4, r4, r6
2334 ADC r5, r5, r7
2335 STRD r4, r5, [r0, #48]
2336 ADDS r8, r8, r4
2337 ADC r9, r9, r5
2338 LDRD r4, r5, [r0, #56]
2339 STRD r8, r9, [r0, #16]
2340 LSRS r6, r4, #28
2341 LSRS r7, r5, #28
2342 ORR r7, r7, r4, LSL #4
2343 ORR r6, r6, r5, LSL #4
2344 LSLS r8, r4, #30
2345 LSLS r9, r5, #30
2346 ORR r9, r9, r4, LSR #2
2347 ORR r8, r8, r5, LSR #2
2348 EOR r6, r6, r8
2349 EOR r7, r7, r9
2350 LSLS r8, r4, #25
2351 LSLS r9, r5, #25
2352 ORR r9, r9, r4, LSR #7
2353 ORR r8, r8, r5, LSR #7
2354 LDRD r4, r5, [r0, #48]
2355 EOR r6, r6, r8
2356 EOR r7, r7, r9
2357 ADDS r4, r4, r6
2358 ADC r5, r5, r7
2359 LDRD r8, r9, [r0, #56]
2360 LDRD r6, r7, [r0]
2361 STRD r4, r5, [r0, #48]
2362 EOR r8, r8, r6
2363 EOR r9, r9, r7
2364 AND r10, r10, r8
2365 AND r11, r11, r9
2366 EOR r10, r10, r6
2367 EOR r11, r11, r7
2368 LDRD r6, r7, [r0, #48]
2369 ADDS r6, r6, r10
2370 ADC r7, r7, r11
2371 STRD r6, r7, [r0, #48]
2372 MOV r10, r8
2373 MOV r11, r9
2374 /* Round 2 */
2375 LDRD r4, r5, [r0, #16]
2376 LSRS r6, r4, #14
2377 LSRS r7, r5, #14
2378 ORR r7, r7, r4, LSL #18
2379 ORR r6, r6, r5, LSL #18
2380 LSRS r8, r4, #18
2381 LSRS r9, r5, #18
2382 ORR r9, r9, r4, LSL #14
2383 ORR r8, r8, r5, LSL #14
2384 EOR r6, r6, r8
2385 EOR r7, r7, r9
2386 LSLS r8, r4, #23
2387 LSLS r9, r5, #23
2388 ORR r9, r9, r4, LSR #9
2389 ORR r8, r8, r5, LSR #9
2390 LDRD r4, r5, [r0, #40]
2391 EOR r6, r6, r8
2392 EOR r7, r7, r9
2393 ADDS r4, r4, r6
2394 ADC r5, r5, r7
2395 STRD r4, r5, [r0, #40]
2396 LDRD r4, r5, [r0, #16]
2397 LDRD r6, r7, [r0, #24]
2398 LDRD r8, r9, [r0, #32]
2399 EOR r6, r6, r8
2400 EOR r7, r7, r9
2401 AND r6, r6, r4
2402 AND r7, r7, r5
2403 EOR r6, r6, r8
2404 EOR r7, r7, r9
2405 LDRD r4, r5, [r0, #40]
2406 LDRD r8, r9, [sp, #16]
2407 ADDS r4, r4, r6
2408 ADC r5, r5, r7
2409 LDRD r6, r7, [r3, #16]
2410 ADDS r4, r4, r8
2411 ADC r5, r5, r9
2412 LDRD r8, r9, [r0, #8]
2413 ADDS r4, r4, r6
2414 ADC r5, r5, r7
2415 STRD r4, r5, [r0, #40]
2416 ADDS r8, r8, r4
2417 ADC r9, r9, r5
2418 LDRD r4, r5, [r0, #48]
2419 STRD r8, r9, [r0, #8]
2420 LSRS r6, r4, #28
2421 LSRS r7, r5, #28
2422 ORR r7, r7, r4, LSL #4
2423 ORR r6, r6, r5, LSL #4
2424 LSLS r8, r4, #30
2425 LSLS r9, r5, #30
2426 ORR r9, r9, r4, LSR #2
2427 ORR r8, r8, r5, LSR #2
2428 EOR r6, r6, r8
2429 EOR r7, r7, r9
2430 LSLS r8, r4, #25
2431 LSLS r9, r5, #25
2432 ORR r9, r9, r4, LSR #7
2433 ORR r8, r8, r5, LSR #7
2434 LDRD r4, r5, [r0, #40]
2435 EOR r6, r6, r8
2436 EOR r7, r7, r9
2437 ADDS r4, r4, r6
2438 ADC r5, r5, r7
2439 LDRD r8, r9, [r0, #48]
2440 LDRD r6, r7, [r0, #56]
2441 STRD r4, r5, [r0, #40]
2442 EOR r8, r8, r6
2443 EOR r9, r9, r7
2444 AND r10, r10, r8
2445 AND r11, r11, r9
2446 EOR r10, r10, r6
2447 EOR r11, r11, r7
2448 LDRD r6, r7, [r0, #40]
2449 ADDS r6, r6, r10
2450 ADC r7, r7, r11
2451 STRD r6, r7, [r0, #40]
2452 MOV r10, r8
2453 MOV r11, r9
2454 /* Round 3 */
2455 LDRD r4, r5, [r0, #8]
2456 LSRS r6, r4, #14
2457 LSRS r7, r5, #14
2458 ORR r7, r7, r4, LSL #18
2459 ORR r6, r6, r5, LSL #18
2460 LSRS r8, r4, #18
2461 LSRS r9, r5, #18
2462 ORR r9, r9, r4, LSL #14
2463 ORR r8, r8, r5, LSL #14
2464 EOR r6, r6, r8
2465 EOR r7, r7, r9
2466 LSLS r8, r4, #23
2467 LSLS r9, r5, #23
2468 ORR r9, r9, r4, LSR #9
2469 ORR r8, r8, r5, LSR #9
2470 LDRD r4, r5, [r0, #32]
2471 EOR r6, r6, r8
2472 EOR r7, r7, r9
2473 ADDS r4, r4, r6
2474 ADC r5, r5, r7
2475 STRD r4, r5, [r0, #32]
2476 LDRD r4, r5, [r0, #8]
2477 LDRD r6, r7, [r0, #16]
2478 LDRD r8, r9, [r0, #24]
2479 EOR r6, r6, r8
2480 EOR r7, r7, r9
2481 AND r6, r6, r4
2482 AND r7, r7, r5
2483 EOR r6, r6, r8
2484 EOR r7, r7, r9
2485 LDRD r4, r5, [r0, #32]
2486 LDRD r8, r9, [sp, #24]
2487 ADDS r4, r4, r6
2488 ADC r5, r5, r7
2489 LDRD r6, r7, [r3, #24]
2490 ADDS r4, r4, r8
2491 ADC r5, r5, r9
2492 LDRD r8, r9, [r0]
2493 ADDS r4, r4, r6
2494 ADC r5, r5, r7
2495 STRD r4, r5, [r0, #32]
2496 ADDS r8, r8, r4
2497 ADC r9, r9, r5
2498 LDRD r4, r5, [r0, #40]
2499 STRD r8, r9, [r0]
2500 LSRS r6, r4, #28
2501 LSRS r7, r5, #28
2502 ORR r7, r7, r4, LSL #4
2503 ORR r6, r6, r5, LSL #4
2504 LSLS r8, r4, #30
2505 LSLS r9, r5, #30
2506 ORR r9, r9, r4, LSR #2
2507 ORR r8, r8, r5, LSR #2
2508 EOR r6, r6, r8
2509 EOR r7, r7, r9
2510 LSLS r8, r4, #25
2511 LSLS r9, r5, #25
2512 ORR r9, r9, r4, LSR #7
2513 ORR r8, r8, r5, LSR #7
2514 LDRD r4, r5, [r0, #32]
2515 EOR r6, r6, r8
2516 EOR r7, r7, r9
2517 ADDS r4, r4, r6
2518 ADC r5, r5, r7
2519 LDRD r8, r9, [r0, #40]
2520 LDRD r6, r7, [r0, #48]
2521 STRD r4, r5, [r0, #32]
2522 EOR r8, r8, r6
2523 EOR r9, r9, r7
2524 AND r10, r10, r8
2525 AND r11, r11, r9
2526 EOR r10, r10, r6
2527 EOR r11, r11, r7
2528 LDRD r6, r7, [r0, #32]
2529 ADDS r6, r6, r10
2530 ADC r7, r7, r11
2531 STRD r6, r7, [r0, #32]
2532 MOV r10, r8
2533 MOV r11, r9
2534 /* Round 4 */
2535 LDRD r4, r5, [r0]
2536 LSRS r6, r4, #14
2537 LSRS r7, r5, #14
2538 ORR r7, r7, r4, LSL #18
2539 ORR r6, r6, r5, LSL #18
2540 LSRS r8, r4, #18
2541 LSRS r9, r5, #18
2542 ORR r9, r9, r4, LSL #14
2543 ORR r8, r8, r5, LSL #14
2544 EOR r6, r6, r8
2545 EOR r7, r7, r9
2546 LSLS r8, r4, #23
2547 LSLS r9, r5, #23
2548 ORR r9, r9, r4, LSR #9
2549 ORR r8, r8, r5, LSR #9
2550 LDRD r4, r5, [r0, #24]
2551 EOR r6, r6, r8
2552 EOR r7, r7, r9
2553 ADDS r4, r4, r6
2554 ADC r5, r5, r7
2555 STRD r4, r5, [r0, #24]
2556 LDRD r4, r5, [r0]
2557 LDRD r6, r7, [r0, #8]
2558 LDRD r8, r9, [r0, #16]
2559 EOR r6, r6, r8
2560 EOR r7, r7, r9
2561 AND r6, r6, r4
2562 AND r7, r7, r5
2563 EOR r6, r6, r8
2564 EOR r7, r7, r9
2565 LDRD r4, r5, [r0, #24]
2566 LDRD r8, r9, [sp, #32]
2567 ADDS r4, r4, r6
2568 ADC r5, r5, r7
2569 LDRD r6, r7, [r3, #32]
2570 ADDS r4, r4, r8
2571 ADC r5, r5, r9
2572 LDRD r8, r9, [r0, #56]
2573 ADDS r4, r4, r6
2574 ADC r5, r5, r7
2575 STRD r4, r5, [r0, #24]
2576 ADDS r8, r8, r4
2577 ADC r9, r9, r5
2578 LDRD r4, r5, [r0, #32]
2579 STRD r8, r9, [r0, #56]
2580 LSRS r6, r4, #28
2581 LSRS r7, r5, #28
2582 ORR r7, r7, r4, LSL #4
2583 ORR r6, r6, r5, LSL #4
2584 LSLS r8, r4, #30
2585 LSLS r9, r5, #30
2586 ORR r9, r9, r4, LSR #2
2587 ORR r8, r8, r5, LSR #2
2588 EOR r6, r6, r8
2589 EOR r7, r7, r9
2590 LSLS r8, r4, #25
2591 LSLS r9, r5, #25
2592 ORR r9, r9, r4, LSR #7
2593 ORR r8, r8, r5, LSR #7
2594 LDRD r4, r5, [r0, #24]
2595 EOR r6, r6, r8
2596 EOR r7, r7, r9
2597 ADDS r4, r4, r6
2598 ADC r5, r5, r7
2599 LDRD r8, r9, [r0, #32]
2600 LDRD r6, r7, [r0, #40]
2601 STRD r4, r5, [r0, #24]
2602 EOR r8, r8, r6
2603 EOR r9, r9, r7
2604 AND r10, r10, r8
2605 AND r11, r11, r9
2606 EOR r10, r10, r6
2607 EOR r11, r11, r7
2608 LDRD r6, r7, [r0, #24]
2609 ADDS r6, r6, r10
2610 ADC r7, r7, r11
2611 STRD r6, r7, [r0, #24]
2612 MOV r10, r8
2613 MOV r11, r9
2614 /* Round 5 */
2615 LDRD r4, r5, [r0, #56]
2616 LSRS r6, r4, #14
2617 LSRS r7, r5, #14
2618 ORR r7, r7, r4, LSL #18
2619 ORR r6, r6, r5, LSL #18
2620 LSRS r8, r4, #18
2621 LSRS r9, r5, #18
2622 ORR r9, r9, r4, LSL #14
2623 ORR r8, r8, r5, LSL #14
2624 EOR r6, r6, r8
2625 EOR r7, r7, r9
2626 LSLS r8, r4, #23
2627 LSLS r9, r5, #23
2628 ORR r9, r9, r4, LSR #9
2629 ORR r8, r8, r5, LSR #9
2630 LDRD r4, r5, [r0, #16]
2631 EOR r6, r6, r8
2632 EOR r7, r7, r9
2633 ADDS r4, r4, r6
2634 ADC r5, r5, r7
2635 STRD r4, r5, [r0, #16]
2636 LDRD r4, r5, [r0, #56]
2637 LDRD r6, r7, [r0]
2638 LDRD r8, r9, [r0, #8]
2639 EOR r6, r6, r8
2640 EOR r7, r7, r9
2641 AND r6, r6, r4
2642 AND r7, r7, r5
2643 EOR r6, r6, r8
2644 EOR r7, r7, r9
2645 LDRD r4, r5, [r0, #16]
2646 LDRD r8, r9, [sp, #40]
2647 ADDS r4, r4, r6
2648 ADC r5, r5, r7
2649 LDRD r6, r7, [r3, #40]
2650 ADDS r4, r4, r8
2651 ADC r5, r5, r9
2652 LDRD r8, r9, [r0, #48]
2653 ADDS r4, r4, r6
2654 ADC r5, r5, r7
2655 STRD r4, r5, [r0, #16]
2656 ADDS r8, r8, r4
2657 ADC r9, r9, r5
2658 LDRD r4, r5, [r0, #24]
2659 STRD r8, r9, [r0, #48]
2660 LSRS r6, r4, #28
2661 LSRS r7, r5, #28
2662 ORR r7, r7, r4, LSL #4
2663 ORR r6, r6, r5, LSL #4
2664 LSLS r8, r4, #30
2665 LSLS r9, r5, #30
2666 ORR r9, r9, r4, LSR #2
2667 ORR r8, r8, r5, LSR #2
2668 EOR r6, r6, r8
2669 EOR r7, r7, r9
2670 LSLS r8, r4, #25
2671 LSLS r9, r5, #25
2672 ORR r9, r9, r4, LSR #7
2673 ORR r8, r8, r5, LSR #7
2674 LDRD r4, r5, [r0, #16]
2675 EOR r6, r6, r8
2676 EOR r7, r7, r9
2677 ADDS r4, r4, r6
2678 ADC r5, r5, r7
2679 LDRD r8, r9, [r0, #24]
2680 LDRD r6, r7, [r0, #32]
2681 STRD r4, r5, [r0, #16]
2682 EOR r8, r8, r6
2683 EOR r9, r9, r7
2684 AND r10, r10, r8
2685 AND r11, r11, r9
2686 EOR r10, r10, r6
2687 EOR r11, r11, r7
2688 LDRD r6, r7, [r0, #16]
2689 ADDS r6, r6, r10
2690 ADC r7, r7, r11
2691 STRD r6, r7, [r0, #16]
2692 MOV r10, r8
2693 MOV r11, r9
2694 /* Round 6 */
2695 LDRD r4, r5, [r0, #48]
2696 LSRS r6, r4, #14
2697 LSRS r7, r5, #14
2698 ORR r7, r7, r4, LSL #18
2699 ORR r6, r6, r5, LSL #18
2700 LSRS r8, r4, #18
2701 LSRS r9, r5, #18
2702 ORR r9, r9, r4, LSL #14
2703 ORR r8, r8, r5, LSL #14
2704 EOR r6, r6, r8
2705 EOR r7, r7, r9
2706 LSLS r8, r4, #23
2707 LSLS r9, r5, #23
2708 ORR r9, r9, r4, LSR #9
2709 ORR r8, r8, r5, LSR #9
2710 LDRD r4, r5, [r0, #8]
2711 EOR r6, r6, r8
2712 EOR r7, r7, r9
2713 ADDS r4, r4, r6
2714 ADC r5, r5, r7
2715 STRD r4, r5, [r0, #8]
2716 LDRD r4, r5, [r0, #48]
2717 LDRD r6, r7, [r0, #56]
2718 LDRD r8, r9, [r0]
2719 EOR r6, r6, r8
2720 EOR r7, r7, r9
2721 AND r6, r6, r4
2722 AND r7, r7, r5
2723 EOR r6, r6, r8
2724 EOR r7, r7, r9
2725 LDRD r4, r5, [r0, #8]
2726 LDRD r8, r9, [sp, #48]
2727 ADDS r4, r4, r6
2728 ADC r5, r5, r7
2729 LDRD r6, r7, [r3, #48]
2730 ADDS r4, r4, r8
2731 ADC r5, r5, r9
2732 LDRD r8, r9, [r0, #40]
2733 ADDS r4, r4, r6
2734 ADC r5, r5, r7
2735 STRD r4, r5, [r0, #8]
2736 ADDS r8, r8, r4
2737 ADC r9, r9, r5
2738 LDRD r4, r5, [r0, #16]
2739 STRD r8, r9, [r0, #40]
2740 LSRS r6, r4, #28
2741 LSRS r7, r5, #28
2742 ORR r7, r7, r4, LSL #4
2743 ORR r6, r6, r5, LSL #4
2744 LSLS r8, r4, #30
2745 LSLS r9, r5, #30
2746 ORR r9, r9, r4, LSR #2
2747 ORR r8, r8, r5, LSR #2
2748 EOR r6, r6, r8
2749 EOR r7, r7, r9
2750 LSLS r8, r4, #25
2751 LSLS r9, r5, #25
2752 ORR r9, r9, r4, LSR #7
2753 ORR r8, r8, r5, LSR #7
2754 LDRD r4, r5, [r0, #8]
2755 EOR r6, r6, r8
2756 EOR r7, r7, r9
2757 ADDS r4, r4, r6
2758 ADC r5, r5, r7
2759 LDRD r8, r9, [r0, #16]
2760 LDRD r6, r7, [r0, #24]
2761 STRD r4, r5, [r0, #8]
2762 EOR r8, r8, r6
2763 EOR r9, r9, r7
2764 AND r10, r10, r8
2765 AND r11, r11, r9
2766 EOR r10, r10, r6
2767 EOR r11, r11, r7
2768 LDRD r6, r7, [r0, #8]
2769 ADDS r6, r6, r10
2770 ADC r7, r7, r11
2771 STRD r6, r7, [r0, #8]
2772 MOV r10, r8
2773 MOV r11, r9
2774 /* Round 7 */
2775 LDRD r4, r5, [r0, #40]
2776 LSRS r6, r4, #14
2777 LSRS r7, r5, #14
2778 ORR r7, r7, r4, LSL #18
2779 ORR r6, r6, r5, LSL #18
2780 LSRS r8, r4, #18
2781 LSRS r9, r5, #18
2782 ORR r9, r9, r4, LSL #14
2783 ORR r8, r8, r5, LSL #14
2784 EOR r6, r6, r8
2785 EOR r7, r7, r9
2786 LSLS r8, r4, #23
2787 LSLS r9, r5, #23
2788 ORR r9, r9, r4, LSR #9
2789 ORR r8, r8, r5, LSR #9
2790 LDRD r4, r5, [r0]
2791 EOR r6, r6, r8
2792 EOR r7, r7, r9
2793 ADDS r4, r4, r6
2794 ADC r5, r5, r7
2795 STRD r4, r5, [r0]
2796 LDRD r4, r5, [r0, #40]
2797 LDRD r6, r7, [r0, #48]
2798 LDRD r8, r9, [r0, #56]
2799 EOR r6, r6, r8
2800 EOR r7, r7, r9
2801 AND r6, r6, r4
2802 AND r7, r7, r5
2803 EOR r6, r6, r8
2804 EOR r7, r7, r9
2805 LDRD r4, r5, [r0]
2806 LDRD r8, r9, [sp, #56]
2807 ADDS r4, r4, r6
2808 ADC r5, r5, r7
2809 LDRD r6, r7, [r3, #56]
2810 ADDS r4, r4, r8
2811 ADC r5, r5, r9
2812 LDRD r8, r9, [r0, #32]
2813 ADDS r4, r4, r6
2814 ADC r5, r5, r7
2815 STRD r4, r5, [r0]
2816 ADDS r8, r8, r4
2817 ADC r9, r9, r5
2818 LDRD r4, r5, [r0, #8]
2819 STRD r8, r9, [r0, #32]
2820 LSRS r6, r4, #28
2821 LSRS r7, r5, #28
2822 ORR r7, r7, r4, LSL #4
2823 ORR r6, r6, r5, LSL #4
2824 LSLS r8, r4, #30
2825 LSLS r9, r5, #30
2826 ORR r9, r9, r4, LSR #2
2827 ORR r8, r8, r5, LSR #2
2828 EOR r6, r6, r8
2829 EOR r7, r7, r9
2830 LSLS r8, r4, #25
2831 LSLS r9, r5, #25
2832 ORR r9, r9, r4, LSR #7
2833 ORR r8, r8, r5, LSR #7
2834 LDRD r4, r5, [r0]
2835 EOR r6, r6, r8
2836 EOR r7, r7, r9
2837 ADDS r4, r4, r6
2838 ADC r5, r5, r7
2839 LDRD r8, r9, [r0, #8]
2840 LDRD r6, r7, [r0, #16]
2841 STRD r4, r5, [r0]
2842 EOR r8, r8, r6
2843 EOR r9, r9, r7
2844 AND r10, r10, r8
2845 AND r11, r11, r9
2846 EOR r10, r10, r6
2847 EOR r11, r11, r7
2848 LDRD r6, r7, [r0]
2849 ADDS r6, r6, r10
2850 ADC r7, r7, r11
2851 STRD r6, r7, [r0]
2852 MOV r10, r8
2853 MOV r11, r9
2854 /* Round 8 */
2855 LDRD r4, r5, [r0, #32]
2856 LSRS r6, r4, #14
2857 LSRS r7, r5, #14
2858 ORR r7, r7, r4, LSL #18
2859 ORR r6, r6, r5, LSL #18
2860 LSRS r8, r4, #18
2861 LSRS r9, r5, #18
2862 ORR r9, r9, r4, LSL #14
2863 ORR r8, r8, r5, LSL #14
2864 EOR r6, r6, r8
2865 EOR r7, r7, r9
2866 LSLS r8, r4, #23
2867 LSLS r9, r5, #23
2868 ORR r9, r9, r4, LSR #9
2869 ORR r8, r8, r5, LSR #9
2870 LDRD r4, r5, [r0, #56]
2871 EOR r6, r6, r8
2872 EOR r7, r7, r9
2873 ADDS r4, r4, r6
2874 ADC r5, r5, r7
2875 STRD r4, r5, [r0, #56]
2876 LDRD r4, r5, [r0, #32]
2877 LDRD r6, r7, [r0, #40]
2878 LDRD r8, r9, [r0, #48]
2879 EOR r6, r6, r8
2880 EOR r7, r7, r9
2881 AND r6, r6, r4
2882 AND r7, r7, r5
2883 EOR r6, r6, r8
2884 EOR r7, r7, r9
2885 LDRD r4, r5, [r0, #56]
2886 LDRD r8, r9, [sp, #64]
2887 ADDS r4, r4, r6
2888 ADC r5, r5, r7
2889 LDRD r6, r7, [r3, #64]
2890 ADDS r4, r4, r8
2891 ADC r5, r5, r9
2892 LDRD r8, r9, [r0, #24]
2893 ADDS r4, r4, r6
2894 ADC r5, r5, r7
2895 STRD r4, r5, [r0, #56]
2896 ADDS r8, r8, r4
2897 ADC r9, r9, r5
2898 LDRD r4, r5, [r0]
2899 STRD r8, r9, [r0, #24]
2900 LSRS r6, r4, #28
2901 LSRS r7, r5, #28
2902 ORR r7, r7, r4, LSL #4
2903 ORR r6, r6, r5, LSL #4
2904 LSLS r8, r4, #30
2905 LSLS r9, r5, #30
2906 ORR r9, r9, r4, LSR #2
2907 ORR r8, r8, r5, LSR #2
2908 EOR r6, r6, r8
2909 EOR r7, r7, r9
2910 LSLS r8, r4, #25
2911 LSLS r9, r5, #25
2912 ORR r9, r9, r4, LSR #7
2913 ORR r8, r8, r5, LSR #7
2914 LDRD r4, r5, [r0, #56]
2915 EOR r6, r6, r8
2916 EOR r7, r7, r9
2917 ADDS r4, r4, r6
2918 ADC r5, r5, r7
2919 LDRD r8, r9, [r0]
2920 LDRD r6, r7, [r0, #8]
2921 STRD r4, r5, [r0, #56]
2922 EOR r8, r8, r6
2923 EOR r9, r9, r7
2924 AND r10, r10, r8
2925 AND r11, r11, r9
2926 EOR r10, r10, r6
2927 EOR r11, r11, r7
2928 LDRD r6, r7, [r0, #56]
2929 ADDS r6, r6, r10
2930 ADC r7, r7, r11
2931 STRD r6, r7, [r0, #56]
2932 MOV r10, r8
2933 MOV r11, r9
2934 /* Round 9 */
2935 LDRD r4, r5, [r0, #24]
2936 LSRS r6, r4, #14
2937 LSRS r7, r5, #14
2938 ORR r7, r7, r4, LSL #18
2939 ORR r6, r6, r5, LSL #18
2940 LSRS r8, r4, #18
2941 LSRS r9, r5, #18
2942 ORR r9, r9, r4, LSL #14
2943 ORR r8, r8, r5, LSL #14
2944 EOR r6, r6, r8
2945 EOR r7, r7, r9
2946 LSLS r8, r4, #23
2947 LSLS r9, r5, #23
2948 ORR r9, r9, r4, LSR #9
2949 ORR r8, r8, r5, LSR #9
2950 LDRD r4, r5, [r0, #48]
2951 EOR r6, r6, r8
2952 EOR r7, r7, r9
2953 ADDS r4, r4, r6
2954 ADC r5, r5, r7
2955 STRD r4, r5, [r0, #48]
2956 LDRD r4, r5, [r0, #24]
2957 LDRD r6, r7, [r0, #32]
2958 LDRD r8, r9, [r0, #40]
2959 EOR r6, r6, r8
2960 EOR r7, r7, r9
2961 AND r6, r6, r4
2962 AND r7, r7, r5
2963 EOR r6, r6, r8
2964 EOR r7, r7, r9
2965 LDRD r4, r5, [r0, #48]
2966 LDRD r8, r9, [sp, #72]
2967 ADDS r4, r4, r6
2968 ADC r5, r5, r7
2969 LDRD r6, r7, [r3, #72]
2970 ADDS r4, r4, r8
2971 ADC r5, r5, r9
2972 LDRD r8, r9, [r0, #16]
2973 ADDS r4, r4, r6
2974 ADC r5, r5, r7
2975 STRD r4, r5, [r0, #48]
2976 ADDS r8, r8, r4
2977 ADC r9, r9, r5
2978 LDRD r4, r5, [r0, #56]
2979 STRD r8, r9, [r0, #16]
2980 LSRS r6, r4, #28
2981 LSRS r7, r5, #28
2982 ORR r7, r7, r4, LSL #4
2983 ORR r6, r6, r5, LSL #4
2984 LSLS r8, r4, #30
2985 LSLS r9, r5, #30
2986 ORR r9, r9, r4, LSR #2
2987 ORR r8, r8, r5, LSR #2
2988 EOR r6, r6, r8
2989 EOR r7, r7, r9
2990 LSLS r8, r4, #25
2991 LSLS r9, r5, #25
2992 ORR r9, r9, r4, LSR #7
2993 ORR r8, r8, r5, LSR #7
2994 LDRD r4, r5, [r0, #48]
2995 EOR r6, r6, r8
2996 EOR r7, r7, r9
2997 ADDS r4, r4, r6
2998 ADC r5, r5, r7
2999 LDRD r8, r9, [r0, #56]
3000 LDRD r6, r7, [r0]
3001 STRD r4, r5, [r0, #48]
3002 EOR r8, r8, r6
3003 EOR r9, r9, r7
3004 AND r10, r10, r8
3005 AND r11, r11, r9
3006 EOR r10, r10, r6
3007 EOR r11, r11, r7
3008 LDRD r6, r7, [r0, #48]
3009 ADDS r6, r6, r10
3010 ADC r7, r7, r11
3011 STRD r6, r7, [r0, #48]
3012 MOV r10, r8
3013 MOV r11, r9
3014 /* Round 10 */
3015 LDRD r4, r5, [r0, #16]
3016 LSRS r6, r4, #14
3017 LSRS r7, r5, #14
3018 ORR r7, r7, r4, LSL #18
3019 ORR r6, r6, r5, LSL #18
3020 LSRS r8, r4, #18
3021 LSRS r9, r5, #18
3022 ORR r9, r9, r4, LSL #14
3023 ORR r8, r8, r5, LSL #14
3024 EOR r6, r6, r8
3025 EOR r7, r7, r9
3026 LSLS r8, r4, #23
3027 LSLS r9, r5, #23
3028 ORR r9, r9, r4, LSR #9
3029 ORR r8, r8, r5, LSR #9
3030 LDRD r4, r5, [r0, #40]
3031 EOR r6, r6, r8
3032 EOR r7, r7, r9
3033 ADDS r4, r4, r6
3034 ADC r5, r5, r7
3035 STRD r4, r5, [r0, #40]
3036 LDRD r4, r5, [r0, #16]
3037 LDRD r6, r7, [r0, #24]
3038 LDRD r8, r9, [r0, #32]
3039 EOR r6, r6, r8
3040 EOR r7, r7, r9
3041 AND r6, r6, r4
3042 AND r7, r7, r5
3043 EOR r6, r6, r8
3044 EOR r7, r7, r9
3045 LDRD r4, r5, [r0, #40]
3046 LDRD r8, r9, [sp, #80]
3047 ADDS r4, r4, r6
3048 ADC r5, r5, r7
3049 LDRD r6, r7, [r3, #80]
3050 ADDS r4, r4, r8
3051 ADC r5, r5, r9
3052 LDRD r8, r9, [r0, #8]
3053 ADDS r4, r4, r6
3054 ADC r5, r5, r7
3055 STRD r4, r5, [r0, #40]
3056 ADDS r8, r8, r4
3057 ADC r9, r9, r5
3058 LDRD r4, r5, [r0, #48]
3059 STRD r8, r9, [r0, #8]
3060 LSRS r6, r4, #28
3061 LSRS r7, r5, #28
3062 ORR r7, r7, r4, LSL #4
3063 ORR r6, r6, r5, LSL #4
3064 LSLS r8, r4, #30
3065 LSLS r9, r5, #30
3066 ORR r9, r9, r4, LSR #2
3067 ORR r8, r8, r5, LSR #2
3068 EOR r6, r6, r8
3069 EOR r7, r7, r9
3070 LSLS r8, r4, #25
3071 LSLS r9, r5, #25
3072 ORR r9, r9, r4, LSR #7
3073 ORR r8, r8, r5, LSR #7
3074 LDRD r4, r5, [r0, #40]
3075 EOR r6, r6, r8
3076 EOR r7, r7, r9
3077 ADDS r4, r4, r6
3078 ADC r5, r5, r7
3079 LDRD r8, r9, [r0, #48]
3080 LDRD r6, r7, [r0, #56]
3081 STRD r4, r5, [r0, #40]
3082 EOR r8, r8, r6
3083 EOR r9, r9, r7
3084 AND r10, r10, r8
3085 AND r11, r11, r9
3086 EOR r10, r10, r6
3087 EOR r11, r11, r7
3088 LDRD r6, r7, [r0, #40]
3089 ADDS r6, r6, r10
3090 ADC r7, r7, r11
3091 STRD r6, r7, [r0, #40]
3092 MOV r10, r8
3093 MOV r11, r9
3094 /* Round 11 */
3095 LDRD r4, r5, [r0, #8]
3096 LSRS r6, r4, #14
3097 LSRS r7, r5, #14
3098 ORR r7, r7, r4, LSL #18
3099 ORR r6, r6, r5, LSL #18
3100 LSRS r8, r4, #18
3101 LSRS r9, r5, #18
3102 ORR r9, r9, r4, LSL #14
3103 ORR r8, r8, r5, LSL #14
3104 EOR r6, r6, r8
3105 EOR r7, r7, r9
3106 LSLS r8, r4, #23
3107 LSLS r9, r5, #23
3108 ORR r9, r9, r4, LSR #9
3109 ORR r8, r8, r5, LSR #9
3110 LDRD r4, r5, [r0, #32]
3111 EOR r6, r6, r8
3112 EOR r7, r7, r9
3113 ADDS r4, r4, r6
3114 ADC r5, r5, r7
3115 STRD r4, r5, [r0, #32]
3116 LDRD r4, r5, [r0, #8]
3117 LDRD r6, r7, [r0, #16]
3118 LDRD r8, r9, [r0, #24]
3119 EOR r6, r6, r8
3120 EOR r7, r7, r9
3121 AND r6, r6, r4
3122 AND r7, r7, r5
3123 EOR r6, r6, r8
3124 EOR r7, r7, r9
3125 LDRD r4, r5, [r0, #32]
3126 LDRD r8, r9, [sp, #88]
3127 ADDS r4, r4, r6
3128 ADC r5, r5, r7
3129 LDRD r6, r7, [r3, #88]
3130 ADDS r4, r4, r8
3131 ADC r5, r5, r9
3132 LDRD r8, r9, [r0]
3133 ADDS r4, r4, r6
3134 ADC r5, r5, r7
3135 STRD r4, r5, [r0, #32]
3136 ADDS r8, r8, r4
3137 ADC r9, r9, r5
3138 LDRD r4, r5, [r0, #40]
3139 STRD r8, r9, [r0]
3140 LSRS r6, r4, #28
3141 LSRS r7, r5, #28
3142 ORR r7, r7, r4, LSL #4
3143 ORR r6, r6, r5, LSL #4
3144 LSLS r8, r4, #30
3145 LSLS r9, r5, #30
3146 ORR r9, r9, r4, LSR #2
3147 ORR r8, r8, r5, LSR #2
3148 EOR r6, r6, r8
3149 EOR r7, r7, r9
3150 LSLS r8, r4, #25
3151 LSLS r9, r5, #25
3152 ORR r9, r9, r4, LSR #7
3153 ORR r8, r8, r5, LSR #7
3154 LDRD r4, r5, [r0, #32]
3155 EOR r6, r6, r8
3156 EOR r7, r7, r9
3157 ADDS r4, r4, r6
3158 ADC r5, r5, r7
3159 LDRD r8, r9, [r0, #40]
3160 LDRD r6, r7, [r0, #48]
3161 STRD r4, r5, [r0, #32]
3162 EOR r8, r8, r6
3163 EOR r9, r9, r7
3164 AND r10, r10, r8
3165 AND r11, r11, r9
3166 EOR r10, r10, r6
3167 EOR r11, r11, r7
3168 LDRD r6, r7, [r0, #32]
3169 ADDS r6, r6, r10
3170 ADC r7, r7, r11
3171 STRD r6, r7, [r0, #32]
3172 MOV r10, r8
3173 MOV r11, r9
3174 /* Round 12 */
3175 LDRD r4, r5, [r0]
3176 LSRS r6, r4, #14
3177 LSRS r7, r5, #14
3178 ORR r7, r7, r4, LSL #18
3179 ORR r6, r6, r5, LSL #18
3180 LSRS r8, r4, #18
3181 LSRS r9, r5, #18
3182 ORR r9, r9, r4, LSL #14
3183 ORR r8, r8, r5, LSL #14
3184 EOR r6, r6, r8
3185 EOR r7, r7, r9
3186 LSLS r8, r4, #23
3187 LSLS r9, r5, #23
3188 ORR r9, r9, r4, LSR #9
3189 ORR r8, r8, r5, LSR #9
3190 LDRD r4, r5, [r0, #24]
3191 EOR r6, r6, r8
3192 EOR r7, r7, r9
3193 ADDS r4, r4, r6
3194 ADC r5, r5, r7
3195 STRD r4, r5, [r0, #24]
3196 LDRD r4, r5, [r0]
3197 LDRD r6, r7, [r0, #8]
3198 LDRD r8, r9, [r0, #16]
3199 EOR r6, r6, r8
3200 EOR r7, r7, r9
3201 AND r6, r6, r4
3202 AND r7, r7, r5
3203 EOR r6, r6, r8
3204 EOR r7, r7, r9
3205 LDRD r4, r5, [r0, #24]
3206 LDRD r8, r9, [sp, #96]
3207 ADDS r4, r4, r6
3208 ADC r5, r5, r7
3209 LDRD r6, r7, [r3, #96]
3210 ADDS r4, r4, r8
3211 ADC r5, r5, r9
3212 LDRD r8, r9, [r0, #56]
3213 ADDS r4, r4, r6
3214 ADC r5, r5, r7
3215 STRD r4, r5, [r0, #24]
3216 ADDS r8, r8, r4
3217 ADC r9, r9, r5
3218 LDRD r4, r5, [r0, #32]
3219 STRD r8, r9, [r0, #56]
3220 LSRS r6, r4, #28
3221 LSRS r7, r5, #28
3222 ORR r7, r7, r4, LSL #4
3223 ORR r6, r6, r5, LSL #4
3224 LSLS r8, r4, #30
3225 LSLS r9, r5, #30
3226 ORR r9, r9, r4, LSR #2
3227 ORR r8, r8, r5, LSR #2
3228 EOR r6, r6, r8
3229 EOR r7, r7, r9
3230 LSLS r8, r4, #25
3231 LSLS r9, r5, #25
3232 ORR r9, r9, r4, LSR #7
3233 ORR r8, r8, r5, LSR #7
3234 LDRD r4, r5, [r0, #24]
3235 EOR r6, r6, r8
3236 EOR r7, r7, r9
3237 ADDS r4, r4, r6
3238 ADC r5, r5, r7
3239 LDRD r8, r9, [r0, #32]
3240 LDRD r6, r7, [r0, #40]
3241 STRD r4, r5, [r0, #24]
3242 EOR r8, r8, r6
3243 EOR r9, r9, r7
3244 AND r10, r10, r8
3245 AND r11, r11, r9
3246 EOR r10, r10, r6
3247 EOR r11, r11, r7
3248 LDRD r6, r7, [r0, #24]
3249 ADDS r6, r6, r10
3250 ADC r7, r7, r11
3251 STRD r6, r7, [r0, #24]
3252 MOV r10, r8
3253 MOV r11, r9
3254 /* Round 13 */
3255 LDRD r4, r5, [r0, #56]
3256 LSRS r6, r4, #14
3257 LSRS r7, r5, #14
3258 ORR r7, r7, r4, LSL #18
3259 ORR r6, r6, r5, LSL #18
3260 LSRS r8, r4, #18
3261 LSRS r9, r5, #18
3262 ORR r9, r9, r4, LSL #14
3263 ORR r8, r8, r5, LSL #14
3264 EOR r6, r6, r8
3265 EOR r7, r7, r9
3266 LSLS r8, r4, #23
3267 LSLS r9, r5, #23
3268 ORR r9, r9, r4, LSR #9
3269 ORR r8, r8, r5, LSR #9
3270 LDRD r4, r5, [r0, #16]
3271 EOR r6, r6, r8
3272 EOR r7, r7, r9
3273 ADDS r4, r4, r6
3274 ADC r5, r5, r7
3275 STRD r4, r5, [r0, #16]
3276 LDRD r4, r5, [r0, #56]
3277 LDRD r6, r7, [r0]
3278 LDRD r8, r9, [r0, #8]
3279 EOR r6, r6, r8
3280 EOR r7, r7, r9
3281 AND r6, r6, r4
3282 AND r7, r7, r5
3283 EOR r6, r6, r8
3284 EOR r7, r7, r9
3285 LDRD r4, r5, [r0, #16]
3286 LDRD r8, r9, [sp, #104]
3287 ADDS r4, r4, r6
3288 ADC r5, r5, r7
3289 LDRD r6, r7, [r3, #104]
3290 ADDS r4, r4, r8
3291 ADC r5, r5, r9
3292 LDRD r8, r9, [r0, #48]
3293 ADDS r4, r4, r6
3294 ADC r5, r5, r7
3295 STRD r4, r5, [r0, #16]
3296 ADDS r8, r8, r4
3297 ADC r9, r9, r5
3298 LDRD r4, r5, [r0, #24]
3299 STRD r8, r9, [r0, #48]
3300 LSRS r6, r4, #28
3301 LSRS r7, r5, #28
3302 ORR r7, r7, r4, LSL #4
3303 ORR r6, r6, r5, LSL #4
3304 LSLS r8, r4, #30
3305 LSLS r9, r5, #30
3306 ORR r9, r9, r4, LSR #2
3307 ORR r8, r8, r5, LSR #2
3308 EOR r6, r6, r8
3309 EOR r7, r7, r9
3310 LSLS r8, r4, #25
3311 LSLS r9, r5, #25
3312 ORR r9, r9, r4, LSR #7
3313 ORR r8, r8, r5, LSR #7
3314 LDRD r4, r5, [r0, #16]
3315 EOR r6, r6, r8
3316 EOR r7, r7, r9
3317 ADDS r4, r4, r6
3318 ADC r5, r5, r7
3319 LDRD r8, r9, [r0, #24]
3320 LDRD r6, r7, [r0, #32]
3321 STRD r4, r5, [r0, #16]
3322 EOR r8, r8, r6
3323 EOR r9, r9, r7
3324 AND r10, r10, r8
3325 AND r11, r11, r9
3326 EOR r10, r10, r6
3327 EOR r11, r11, r7
3328 LDRD r6, r7, [r0, #16]
3329 ADDS r6, r6, r10
3330 ADC r7, r7, r11
3331 STRD r6, r7, [r0, #16]
3332 MOV r10, r8
3333 MOV r11, r9
3334 /* Round 14 */
3335 LDRD r4, r5, [r0, #48]
3336 LSRS r6, r4, #14
3337 LSRS r7, r5, #14
3338 ORR r7, r7, r4, LSL #18
3339 ORR r6, r6, r5, LSL #18
3340 LSRS r8, r4, #18
3341 LSRS r9, r5, #18
3342 ORR r9, r9, r4, LSL #14
3343 ORR r8, r8, r5, LSL #14
3344 EOR r6, r6, r8
3345 EOR r7, r7, r9
3346 LSLS r8, r4, #23
3347 LSLS r9, r5, #23
3348 ORR r9, r9, r4, LSR #9
3349 ORR r8, r8, r5, LSR #9
3350 LDRD r4, r5, [r0, #8]
3351 EOR r6, r6, r8
3352 EOR r7, r7, r9
3353 ADDS r4, r4, r6
3354 ADC r5, r5, r7
3355 STRD r4, r5, [r0, #8]
3356 LDRD r4, r5, [r0, #48]
3357 LDRD r6, r7, [r0, #56]
3358 LDRD r8, r9, [r0]
3359 EOR r6, r6, r8
3360 EOR r7, r7, r9
3361 AND r6, r6, r4
3362 AND r7, r7, r5
3363 EOR r6, r6, r8
3364 EOR r7, r7, r9
3365 LDRD r4, r5, [r0, #8]
3366 LDRD r8, r9, [sp, #112]
3367 ADDS r4, r4, r6
3368 ADC r5, r5, r7
3369 LDRD r6, r7, [r3, #112]
3370 ADDS r4, r4, r8
3371 ADC r5, r5, r9
3372 LDRD r8, r9, [r0, #40]
3373 ADDS r4, r4, r6
3374 ADC r5, r5, r7
3375 STRD r4, r5, [r0, #8]
3376 ADDS r8, r8, r4
3377 ADC r9, r9, r5
3378 LDRD r4, r5, [r0, #16]
3379 STRD r8, r9, [r0, #40]
3380 LSRS r6, r4, #28
3381 LSRS r7, r5, #28
3382 ORR r7, r7, r4, LSL #4
3383 ORR r6, r6, r5, LSL #4
3384 LSLS r8, r4, #30
3385 LSLS r9, r5, #30
3386 ORR r9, r9, r4, LSR #2
3387 ORR r8, r8, r5, LSR #2
3388 EOR r6, r6, r8
3389 EOR r7, r7, r9
3390 LSLS r8, r4, #25
3391 LSLS r9, r5, #25
3392 ORR r9, r9, r4, LSR #7
3393 ORR r8, r8, r5, LSR #7
3394 LDRD r4, r5, [r0, #8]
3395 EOR r6, r6, r8
3396 EOR r7, r7, r9
3397 ADDS r4, r4, r6
3398 ADC r5, r5, r7
3399 LDRD r8, r9, [r0, #16]
3400 LDRD r6, r7, [r0, #24]
3401 STRD r4, r5, [r0, #8]
3402 EOR r8, r8, r6
3403 EOR r9, r9, r7
3404 AND r10, r10, r8
3405 AND r11, r11, r9
3406 EOR r10, r10, r6
3407 EOR r11, r11, r7
3408 LDRD r6, r7, [r0, #8]
3409 ADDS r6, r6, r10
3410 ADC r7, r7, r11
3411 STRD r6, r7, [r0, #8]
3412 MOV r10, r8
3413 MOV r11, r9
3414 /* Round 15 */
3415 LDRD r4, r5, [r0, #40]
3416 LSRS r6, r4, #14
3417 LSRS r7, r5, #14
3418 ORR r7, r7, r4, LSL #18
3419 ORR r6, r6, r5, LSL #18
3420 LSRS r8, r4, #18
3421 LSRS r9, r5, #18
3422 ORR r9, r9, r4, LSL #14
3423 ORR r8, r8, r5, LSL #14
3424 EOR r6, r6, r8
3425 EOR r7, r7, r9
3426 LSLS r8, r4, #23
3427 LSLS r9, r5, #23
3428 ORR r9, r9, r4, LSR #9
3429 ORR r8, r8, r5, LSR #9
3430 LDRD r4, r5, [r0]
3431 EOR r6, r6, r8
3432 EOR r7, r7, r9
3433 ADDS r4, r4, r6
3434 ADC r5, r5, r7
3435 STRD r4, r5, [r0]
3436 LDRD r4, r5, [r0, #40]
3437 LDRD r6, r7, [r0, #48]
3438 LDRD r8, r9, [r0, #56]
3439 EOR r6, r6, r8
3440 EOR r7, r7, r9
3441 AND r6, r6, r4
3442 AND r7, r7, r5
3443 EOR r6, r6, r8
3444 EOR r7, r7, r9
3445 LDRD r4, r5, [r0]
3446 LDRD r8, r9, [sp, #120]
3447 ADDS r4, r4, r6
3448 ADC r5, r5, r7
3449 LDRD r6, r7, [r3, #120]
3450 ADDS r4, r4, r8
3451 ADC r5, r5, r9
3452 LDRD r8, r9, [r0, #32]
3453 ADDS r4, r4, r6
3454 ADC r5, r5, r7
3455 STRD r4, r5, [r0]
3456 ADDS r8, r8, r4
3457 ADC r9, r9, r5
3458 LDRD r4, r5, [r0, #8]
3459 STRD r8, r9, [r0, #32]
3460 LSRS r6, r4, #28
3461 LSRS r7, r5, #28
3462 ORR r7, r7, r4, LSL #4
3463 ORR r6, r6, r5, LSL #4
3464 LSLS r8, r4, #30
3465 LSLS r9, r5, #30
3466 ORR r9, r9, r4, LSR #2
3467 ORR r8, r8, r5, LSR #2
3468 EOR r6, r6, r8
3469 EOR r7, r7, r9
3470 LSLS r8, r4, #25
3471 LSLS r9, r5, #25
3472 ORR r9, r9, r4, LSR #7
3473 ORR r8, r8, r5, LSR #7
3474 LDRD r4, r5, [r0]
3475 EOR r6, r6, r8
3476 EOR r7, r7, r9
3477 ADDS r4, r4, r6
3478 ADC r5, r5, r7
3479 LDRD r8, r9, [r0, #8]
3480 LDRD r6, r7, [r0, #16]
3481 STRD r4, r5, [r0]
3482 EOR r8, r8, r6
3483 EOR r9, r9, r7
3484 AND r10, r10, r8
3485 AND r11, r11, r9
3486 EOR r10, r10, r6
3487 EOR r11, r11, r7
3488 LDRD r6, r7, [r0]
3489 ADDS r6, r6, r10
3490 ADC r7, r7, r11
3491 STRD r6, r7, [r0]
3492 MOV r10, r8
3493 MOV r11, r9
3494 /* Add in digest from start */
3495 LDRD r4, r5, [r0]
3496 LDRD r6, r7, [r0, #8]
3497 LDRD r8, r9, [sp, #128]
3498 LDRD r10, r11, [sp, #136]
3499 ADDS r4, r4, r8
3500 ADC r5, r5, r9
3501 ADDS r6, r6, r10
3502 ADC r7, r7, r11
3503 STRD r4, r5, [r0]
3504 STRD r6, r7, [r0, #8]
3505 STRD r4, r5, [sp, #128]
3506 STRD r6, r7, [sp, #136]
3507 LDRD r4, r5, [r0, #16]
3508 LDRD r6, r7, [r0, #24]
3509 LDRD r8, r9, [sp, #144]
3510 LDRD r10, r11, [sp, #152]
3511 ADDS r4, r4, r8
3512 ADC r5, r5, r9
3513 ADDS r6, r6, r10
3514 ADC r7, r7, r11
3515 STRD r4, r5, [r0, #16]
3516 STRD r6, r7, [r0, #24]
3517 STRD r4, r5, [sp, #144]
3518 STRD r6, r7, [sp, #152]
3519 LDRD r4, r5, [r0, #32]
3520 LDRD r6, r7, [r0, #40]
3521 LDRD r8, r9, [sp, #160]
3522 LDRD r10, r11, [sp, #168]
3523 ADDS r4, r4, r8
3524 ADC r5, r5, r9
3525 ADDS r6, r6, r10
3526 ADC r7, r7, r11
3527 STRD r4, r5, [r0, #32]
3528 STRD r6, r7, [r0, #40]
3529 STRD r4, r5, [sp, #160]
3530 STRD r6, r7, [sp, #168]
3531 LDRD r4, r5, [r0, #48]
3532 LDRD r6, r7, [r0, #56]
3533 LDRD r8, r9, [sp, #176]
3534 LDRD r10, r11, [sp, #184]
3535 ADDS r4, r4, r8
3536 ADC r5, r5, r9
3537 ADDS r6, r6, r10
3538 ADC r7, r7, r11
3539 STRD r4, r5, [r0, #48]
3540 STRD r6, r7, [r0, #56]
3541 STRD r4, r5, [sp, #176]
3542 STRD r6, r7, [sp, #184]
3543 SUBS r2, r2, #0x80
3544 SUB r3, r3, #0x200
3545 ADD r1, r1, #0x80
3546#if defined(__GNUC__) || defined(__ICCARM__) || defined(__IAR_SYSTEMS_ICC__)
3547 BNE L_SHA512_transform_len_begin
3548#else
3549 BNE.W L_SHA512_transform_len_begin
3550#endif
3551 EOR r0, r0, r0
3552 ADD sp, sp, #0xc0
3553 POP {r4, r5, r6, r7, r8, r9, r10, r11, pc}
3554 /* Cycle Count = 5021 */
3555 .size Transform_Sha512_Len_base,.-Transform_Sha512_Len_base
3556#endif /* WOLFSSL_ARMASM_NO_NEON */
3557#endif /* WOLFSSL_SHA512 || WOLFSSL_SHA384 */
3558#endif /* WOLFSSL_ARMASM_THUMB2 */
3559#endif /* WOLFSSL_ARMASM */
3560
3561#if defined(__linux__) && defined(__ELF__)
3562.section .note.GNU-stack,"",%progbits
3563#endif
3564#endif /* !WOLFSSL_ARMASM_INLINE */