cjson
.github
workflows CI.yml ci-fuzz.yml
CONTRIBUTING.md
fuzzing
inputs test1 test10 test11 test2 test3 test3.bu test3.uf test3.uu test4 test5 test6 test7 test8 test9
.gitignore CMakeLists.txt afl-prepare-linux.sh afl.c afl.sh cjson_read_fuzzer.c fuzz_main.c json.dict ossfuzz.sh
library_config cJSONConfig.cmake.in cJSONConfigVersion.cmake.in libcjson.pc.in libcjson_utils.pc.in uninstall.cmake
tests
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.expected
json-patch-tests .editorconfig .gitignore .npmignore README.md cjson-utils-tests.json package.json spec_tests.json tests.json
unity
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.py
docs ThrowTheSwitchCodingStandard.md UnityAssertionsCheatSheetSuitableforPrintingandPossiblyFraming.pdf UnityAssertionsReference.md UnityConfigurationGuide.md UnityGettingStartedGuide.md UnityHelperScriptsGuide.md license.txt
examples
example_1
src ProductionCode.c ProductionCode.h ProductionCode2.c ProductionCode2.h
makefile readme.txt
example_2
src ProductionCode.c ProductionCode.h ProductionCode2.c ProductionCode2.h
makefile readme.txt
example_3
helper UnityHelper.c UnityHelper.h
src ProductionCode.c ProductionCode.h ProductionCode2.c ProductionCode2.h
rakefile.rb rakefile_helper.rb readme.txt target_gcc_32.yml
unity_config.h
extras
eclipse error_parsers.txt
fixture
src unity_fixture.c unity_fixture.h unity_fixture_internals.h unity_fixture_malloc_overrides.h
rakefile.rb rakefile_helper.rb readme.txt
release build.info version.info
src unity.c unity.h unity_internals.h
.gitattributes .gitignore .travis.yml README.md
CMakeLists.txt cjson_add.c common.h compare_tests.c json_patch_tests.c minify_tests.c misc_tests.c misc_utils_tests.c old_utils_tests.c parse_array.c parse_examples.c parse_hex4.c parse_number.c parse_object.c parse_string.c parse_value.c parse_with_opts.c print_array.c print_number.c print_object.c print_string.c print_value.c readme_examples.c unity_setup.c
.editorconfig .gitattributes .gitignore .travis.yml CHANGELOG.md CMakeLists.txt CONTRIBUTORS.md LICENSE Makefile README.md SECURITY.md appveyor.yml cJSON.c cJSON.h cJSON_Utils.c cJSON_Utils.h test.c valgrind.supp
curl
.circleci config.yml
.github
ISSUE_TEMPLATE bug_report.yml config.yml docs.yml
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.yaml
workflows 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.yml
CODEOWNERS CONTRIBUTING.md FUNDING.yml dependabot.yml labeler.yml lock.yml stale.yml
CMake 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.cmake
LICENSES BSD-4-Clause-UC.txt ISC.txt curl.txt
docs
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.md
examples .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.c
internals 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.md
libcurl
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.inc
.gitignore ABI.md CMakeLists.txt Makefile.am Makefile.inc curl_easy_cleanup.md curl_easy_duphandle.md curl_easy_escape.md curl_easy_getinfo.md curl_easy_header.md curl_easy_init.md curl_easy_nextheader.md curl_easy_option_by_id.md curl_easy_option_by_name.md curl_easy_option_next.md curl_easy_pause.md curl_easy_perform.md curl_easy_recv.md curl_easy_reset.md curl_easy_send.md curl_easy_setopt.md curl_easy_ssls_export.md curl_easy_ssls_import.md curl_easy_strerror.md curl_easy_unescape.md curl_easy_upkeep.md curl_escape.md curl_formadd.md curl_formfree.md curl_formget.md curl_free.md curl_getdate.md curl_getenv.md curl_global_cleanup.md curl_global_init.md curl_global_init_mem.md curl_global_sslset.md curl_global_trace.md curl_mime_addpart.md curl_mime_data.md curl_mime_data_cb.md curl_mime_encoder.md curl_mime_filedata.md curl_mime_filename.md curl_mime_free.md curl_mime_headers.md curl_mime_init.md curl_mime_name.md curl_mime_subparts.md curl_mime_type.md curl_mprintf.md curl_multi_add_handle.md curl_multi_assign.md curl_multi_cleanup.md curl_multi_fdset.md curl_multi_get_handles.md curl_multi_get_offt.md curl_multi_info_read.md curl_multi_init.md curl_multi_notify_disable.md curl_multi_notify_enable.md curl_multi_perform.md curl_multi_poll.md curl_multi_remove_handle.md curl_multi_setopt.md curl_multi_socket.md curl_multi_socket_action.md curl_multi_socket_all.md curl_multi_strerror.md curl_multi_timeout.md curl_multi_wait.md curl_multi_waitfds.md curl_multi_wakeup.md curl_pushheader_byname.md curl_pushheader_bynum.md curl_share_cleanup.md curl_share_init.md curl_share_setopt.md curl_share_strerror.md curl_slist_append.md curl_slist_free_all.md curl_strequal.md curl_strnequal.md curl_unescape.md curl_url.md curl_url_cleanup.md curl_url_dup.md curl_url_get.md curl_url_set.md curl_url_strerror.md curl_version.md curl_version_info.md curl_ws_meta.md curl_ws_recv.md curl_ws_send.md curl_ws_start_frame.md libcurl-easy.md libcurl-env-dbg.md libcurl-env.md libcurl-errors.md libcurl-multi.md libcurl-security.md libcurl-share.md libcurl-thread.md libcurl-tutorial.md libcurl-url.md libcurl-ws.md libcurl.m4 libcurl.md mksymbolsmanpage.pl symbols-in-versions symbols.pl
tests CI.md FILEFORMAT.md HTTP.md TEST-SUITE.md
.gitignore ALTSVC.md BINDINGS.md BUG-BOUNTY.md BUGS.md CIPHERS-TLS12.md CIPHERS.md CMakeLists.txt CODE_OF_CONDUCT.md CODE_REVIEW.md CONTRIBUTE.md CURL-DISABLE.md CURLDOWN.md DEPRECATE.md DISTROS.md EARLY-RELEASE.md ECH.md EXPERIMENTAL.md FAQ.md FEATURES.md GOVERNANCE.md HELP-US.md HISTORY.md HSTS.md HTTP-COOKIES.md HTTP3.md HTTPSRR.md INFRASTRUCTURE.md INSTALL-CMAKE.md INSTALL.md INTERNALS.md IPFS.md KNOWN_BUGS.md KNOWN_RISKS.md MAIL-ETIQUETTE.md MANUAL.md Makefile.am README.md RELEASE-PROCEDURE.md ROADMAP.md RUSTLS.md SECURITY-ADVISORY.md SPONSORS.md SSL-PROBLEMS.md SSLCERTS.md THANKS THANKS-filter TODO.md TheArtOfHttpScripting.md URL-SYNTAX.md VERIFY.md VERSIONS.md VULN-DISCLOSURE-POLICY.md curl-config.md mk-ca-bundle.md options-in-versions runtests.md testcurl.md wcurl.md
include
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.h
Makefile.am README.md
lib
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.h
vauth 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.h
vquic curl_ngtcp2.c curl_ngtcp2.h curl_quiche.c curl_quiche.h vquic-tls.c vquic-tls.h vquic.c vquic.h vquic_int.h
vssh libssh.c libssh2.c ssh.h vssh.c vssh.h
vtls 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.h
.gitignore CMakeLists.txt Makefile.am Makefile.inc Makefile.soname altsvc.c altsvc.h amigaos.c amigaos.h arpa_telnet.h asyn-ares.c asyn-base.c asyn-thrdd.c asyn.h bufq.c bufq.h bufref.c bufref.h cf-dns.c cf-dns.h cf-h1-proxy.c cf-h1-proxy.h cf-h2-proxy.c cf-h2-proxy.h cf-haproxy.c cf-haproxy.h cf-https-connect.c cf-https-connect.h cf-ip-happy.c cf-ip-happy.h cf-socket.c cf-socket.h cfilters.c cfilters.h config-mac.h config-os400.h config-riscos.h config-win32.h conncache.c conncache.h connect.c connect.h content_encoding.c content_encoding.h cookie.c cookie.h creds.c creds.h cshutdn.c cshutdn.h curl_addrinfo.c curl_addrinfo.h curl_config-cmake.h.in curl_ctype.h curl_endian.c curl_endian.h curl_fnmatch.c curl_fnmatch.h curl_fopen.c curl_fopen.h curl_get_line.c curl_get_line.h curl_gethostname.c curl_gethostname.h curl_gssapi.c curl_gssapi.h curl_hmac.h curl_ldap.h curl_md4.h curl_md5.h curl_memrchr.c curl_memrchr.h curl_ntlm_core.c curl_ntlm_core.h curl_printf.h curl_range.c curl_range.h curl_sasl.c curl_sasl.h curl_setup.h curl_sha256.h curl_sha512_256.c curl_sha512_256.h curl_share.c curl_share.h curl_sspi.c curl_sspi.h curl_threads.c curl_threads.h curl_trc.c curl_trc.h cw-out.c cw-out.h cw-pause.c cw-pause.h dict.c dict.h dllmain.c dnscache.c dnscache.h doh.c doh.h dynhds.c dynhds.h easy.c easy_lock.h easygetopt.c easyif.h easyoptions.c easyoptions.h escape.c escape.h fake_addrinfo.c fake_addrinfo.h file.c file.h fileinfo.c fileinfo.h formdata.c formdata.h ftp-int.h ftp.c ftp.h ftplistparser.c ftplistparser.h functypes.h getenv.c getinfo.c getinfo.h gopher.c gopher.h hash.c hash.h headers.c headers.h hmac.c hostip.c hostip.h hostip4.c hostip6.c hsts.c hsts.h http.c http.h http1.c http1.h http2.c http2.h http_aws_sigv4.c http_aws_sigv4.h http_chunks.c http_chunks.h http_digest.c http_digest.h http_negotiate.c http_negotiate.h http_ntlm.c http_ntlm.h http_proxy.c http_proxy.h httpsrr.c httpsrr.h idn.c idn.h if2ip.c if2ip.h imap.c imap.h ldap.c libcurl.def libcurl.rc libcurl.vers.in llist.c llist.h macos.c macos.h md4.c md5.c memdebug.c mime.c mime.h mprintf.c mqtt.c mqtt.h multi.c multi_ev.c multi_ev.h multi_ntfy.c multi_ntfy.h multihandle.h multiif.h netrc.c netrc.h noproxy.c noproxy.h openldap.c optiontable.pl parsedate.c parsedate.h peer.c peer.h pingpong.c pingpong.h pop3.c pop3.h progress.c progress.h protocol.c protocol.h psl.c psl.h rand.c rand.h ratelimit.c ratelimit.h request.c request.h rtsp.c rtsp.h select.c select.h sendf.c sendf.h setopt.c setopt.h setup-os400.h setup-vms.h setup-win32.h sha256.c sigpipe.h slist.c slist.h smb.c smb.h smtp.c smtp.h sockaddr.h socketpair.c socketpair.h socks.c socks.h socks_gssapi.c socks_sspi.c splay.c splay.h strcase.c strcase.h strequal.c strerror.c strerror.h system_win32.c system_win32.h telnet.c telnet.h tftp.c tftp.h thrdpool.c thrdpool.h thrdqueue.c thrdqueue.h transfer.c transfer.h uint-bset.c uint-bset.h uint-hash.c uint-hash.h uint-spbset.c uint-spbset.h uint-table.c uint-table.h url.c url.h urlapi-int.h urlapi.c urldata.h version.c ws.c ws.h
m4 .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.m4
projects
OS400
rpg-examples HEADERAPI HTTPPOST INMEMORY SIMPLE1 SIMPLE2 SMTPSRCMBR
.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.h
Windows
tmpl .gitattributes README.txt curl-all.sln curl.sln curl.vcxproj curl.vcxproj.filters libcurl.sln libcurl.vcxproj libcurl.vcxproj.filters
.gitignore README.md generate.bat
vms 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.h
Makefile.am README.md
scripts .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 wcurl
src
toolx tool_time.c tool_time.h
.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.h
tests
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.prm
cmake CMakeLists.txt test.c test.cpp test.sh
data .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 test999
http
testenv
mod_curltest .gitignore mod_curltest.c
__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.py
.gitignore CMakeLists.txt Makefile.am config.ini.in conftest.py requirements.txt scorecard.py test_01_basic.py test_02_download.py test_03_goaway.py test_04_stuttered.py test_05_errors.py test_06_eyeballs.py test_07_upload.py test_08_caddy.py test_09_push.py test_10_proxy.py test_11_unix.py test_12_reuse.py test_13_proxy_auth.py test_14_auth.py test_15_tracing.py test_16_info.py test_17_ssl_use.py test_18_methods.py test_19_shutdown.py test_20_websockets.py test_21_resolve.py test_22_httpsrr.py test_30_vsftpd.py test_31_vsftpds.py test_32_ftps_vsftpd.py test_40_socks.py test_50_scp.py test_51_sftp.py
libtest .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.h
server .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.c
tunit .gitignore CMakeLists.txt Makefile.am Makefile.inc README.md tool1394.c tool1604.c tool1621.c tool1622.c tool1623.c tool1720.c
unit .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.c
.gitignore CMakeLists.txt Makefile.am allversions.pm appveyor.pm azure.pm config.in configurehelp.pm.in devtest.pl dictserver.py directories.pm ech_combos.py ech_tests.sh ftpserver.pl getpart.pm globalconfig.pm http-server.pl http2-server.pl http3-server.pl memanalyze.pl memanalyzer.pm negtelnetserver.py nghttpx.conf pathhelp.pm processhelp.pm requirements.txt rtspserver.pl runner.pm runtests.pl secureserver.pl serverhelp.pm servers.pm smbserver.py sshhelp.pm sshserver.pl test1119.pl test1135.pl test1139.pl test1140.pl test1165.pl test1167.pl test1173.pl test1175.pl test1177.pl test1222.pl test1275.pl test1276.pl test1477.pl test1486.pl test1488.pl test1544.pl test1707.pl test745.pl test971.pl testcurl.pl testutil.pm tftpserver.pl util.py valgrind.pm valgrind.supp
.clang-tidy.yml .dir-locals.el .editorconfig .git-blame-ignore-revs .gitattributes .gitignore .mailmap CHANGES.md CMakeLists.txt COPYING Dockerfile GIT-INFO.md Makefile.am README README.md RELEASE-NOTES REUSE.toml SECURITY.md acinclude.m4 appveyor.sh appveyor.yml configure.ac curl-config.in libcurl.pc.in renovate.json
examples .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.lua
iniparser
.github
ISSUE_TEMPLATE config.yml
workflows disable-pull-requests.yml trigger-gitlab-ci.yml
cmake JoinPaths.cmake config.cmake.in pc.in
example iniexample.c iniwrite.c parse.c twisted-errors.ini twisted-genhuge.py twisted-ofkey.ini twisted-ofval.ini twisted.ini
src dictionary.c dictionary.h iniparser.c iniparser.h
test
ressources
bad_ini ends_well.ini twisted-errors.ini twisted-ofkey.ini twisted-ofval.ini
good_ini empty.ini spaced.ini spaced2.ini twisted.ini
gruezi.ini old.ini quotes.ini utf8.ini
CMakeLists.txt test_dictionary.c test_iniparser.c unity-config.yml unity_config.h
.cmake-format.py .gitignore .gitlab-ci.yml .gitmessage .travis.yml AUTHORS CMakeLists.txt FAQ-en.md FAQ-zhcn.md INSTALL LICENSE README.md compile_commands.json
jinjac
example CMakeLists.txt example.c
jinjac_test_app CMakeLists.txt jinjac_test_app.c
libjinjac
include jinjac.h
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.h
CMakeLists.txt
test .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.jinja
.gitignore CMakeLists.txt LICENSE.txt README.md build_coverage.sh build_debug.sh build_release.sh cppcheck_analysis.sh
libev 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-h1
luajit
doc
img contact.png
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.html
dynasm 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.lua
etc luajit.1 luajit.pc
src
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.c
jit .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.lua
.gitignore Makefile Makefile.dep lauxlib.h lib_aux.c lib_base.c lib_bit.c lib_buffer.c lib_debug.c lib_ffi.c lib_init.c lib_io.c lib_jit.c lib_math.c lib_os.c lib_package.c lib_string.c lib_table.c lj_alloc.c lj_alloc.h lj_api.c lj_arch.h lj_asm.c lj_asm.h lj_asm_arm.h lj_asm_arm64.h lj_asm_mips.h lj_asm_ppc.h lj_asm_x86.h lj_assert.c lj_bc.c lj_bc.h lj_bcdump.h lj_bcread.c lj_bcwrite.c lj_buf.c lj_buf.h lj_carith.c lj_carith.h lj_ccall.c lj_ccall.h lj_ccallback.c lj_ccallback.h lj_cconv.c lj_cconv.h lj_cdata.c lj_cdata.h lj_char.c lj_char.h lj_clib.c lj_clib.h lj_cparse.c lj_cparse.h lj_crecord.c lj_crecord.h lj_ctype.c lj_ctype.h lj_debug.c lj_debug.h lj_def.h lj_dispatch.c lj_dispatch.h lj_emit_arm.h lj_emit_arm64.h lj_emit_mips.h lj_emit_ppc.h lj_emit_x86.h lj_err.c lj_err.h lj_errmsg.h lj_ff.h lj_ffrecord.c lj_ffrecord.h lj_frame.h lj_func.c lj_func.h lj_gc.c lj_gc.h lj_gdbjit.c lj_gdbjit.h lj_ir.c lj_ir.h lj_ircall.h lj_iropt.h lj_jit.h lj_lex.c lj_lex.h lj_lib.c lj_lib.h lj_load.c lj_mcode.c lj_mcode.h lj_meta.c lj_meta.h lj_obj.c lj_obj.h lj_opt_dce.c lj_opt_fold.c lj_opt_loop.c lj_opt_mem.c lj_opt_narrow.c lj_opt_sink.c lj_opt_split.c lj_parse.c lj_parse.h lj_prng.c lj_prng.h lj_profile.c lj_profile.h lj_record.c lj_record.h lj_serialize.c lj_serialize.h lj_snap.c lj_snap.h lj_state.c lj_state.h lj_str.c lj_str.h lj_strfmt.c lj_strfmt.h lj_strfmt_num.c lj_strscan.c lj_strscan.h lj_tab.c lj_tab.h lj_target.h lj_target_arm.h lj_target_arm64.h lj_target_mips.h lj_target_ppc.h lj_target_x86.h lj_trace.c lj_trace.h lj_traceerr.h lj_udata.c lj_udata.h lj_vm.h lj_vmevent.c lj_vmevent.h lj_vmmath.c ljamalg.c lua.h lua.hpp luaconf.h luajit.c luajit_rolling.h lualib.h msvcbuild.bat nxbuild.bat ps4build.bat ps5build.bat psvitabuild.bat vm_arm.dasc vm_arm64.dasc vm_mips.dasc vm_mips64.dasc vm_ppc.dasc vm_x64.dasc vm_x86.dasc xb1build.bat xedkbuild.bat
.gitattributes .gitignore .relver COPYRIGHT Makefile README
sqlite shell.c sqlite3.c sqlite3.h sqlite3ext.h
wolfssl
.github
ISSUE_TEMPLATE bug_report.yaml other.yaml
actions
install-apt-deps action.yml
scripts
zephyr-4.x external_libc.conf zephyr-test.sh
openssl-ech.sh tls-anvil-test.sh
workflows
disabled haproxy.yml hitch.yml hostap.yml
hostap-files
configs
07c9f183ea744ac04585fb6dd10220c75a5e2e74 hostapd.config tests wpa_supplicant.config
b607d2723e927a3446d89aed813f1aa6068186bb hostapd.config tests wpa_supplicant.config
hostap_2_10 extra.patch hostapd.config tests wpa_supplicant.config
Makefile README dbus-wpa_supplicant.conf
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.yml
PULL_REQUEST_TEMPLATE.md SECURITY.md membrowse-targets.json
Docker
OpenWrt Dockerfile README.md runTests.sh
packaging
debian Dockerfile
fedora Dockerfile
wolfCLU Dockerfile README.md
yocto Dockerfile buildAndPush.sh
Dockerfile Dockerfile.cross-compiler README.md buildAndPush.sh include.am run.sh
IDE
ARDUINO
sketches
wolfssl_client README.md
wolfssl_server README.md
wolfssl_version README.md
README.md
Arduino_README_prepend.md README.md include.am keywords.txt library.properties.template wolfssl-arduino.cpp wolfssl-arduino.sh wolfssl.h
AURIX Cpu0_Main.c README.md include.am user_settings.h wolf_main.c
Android Android.bp README.md include.am user_settings.h
CRYPTOCELL README.md include.am main.c user_settings.h
CSBENCH include.am user_settings.h
ECLIPSE
DEOS
deos_wolfssl .options
README.md deos_malloc.c include.am tls_wolfssl.c tls_wolfssl.h user_settings.h
MICRIUM README.md client_wolfssl.c client_wolfssl.h include.am server_wolfssl.c server_wolfssl.h user_settings.h wolfsslRunTests.c
RTTHREAD README.md include.am user_settings.h wolfssl_test.c
SIFIVE README.md include.am
Espressif
ESP-IDF
examples
template
VisualGDB wolfssl_template_IDF_v5.1_ESP32.vgdbproj
components
wolfssl
include user_settings.h
CMakeLists.txt Kconfig README.md component.mk
main
include main.h
CMakeLists.txt Kconfig.projbuild component.mk main.c
CMakeLists.txt Makefile README.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp8266
wolfssl_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.vgdbproj
components
wolfssl
include user_settings.h
CMakeLists.txt Kconfig README.md component.mk
main
include main.h
CMakeLists.txt Kconfig.projbuild component.mk main.c
CMakeLists.txt Makefile README.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp8266
wolfssl_client
VisualGDB README.md wolfssl_client_IDF_v5_ESP32.sln wolfssl_client_IDF_v5_ESP32.vgdbproj
components
wolfssl
include user_settings.h
CMakeLists.txt Kconfig README.md component.mk
main
include client-tls.h main.h time_helper.h wifi_connect.h
CMakeLists.txt Kconfig.projbuild client-tls.c component.mk main.c time_helper.c wifi_connect.c
CMakeLists.txt Makefile README.md README_server_sm.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp32c2 sdkconfig.defaults.esp8266 wolfssl_client_ESP8266.vgdbproj
wolfssl_server
VisualGDB README.md wolfssl_server_IDF_v5_ESP32.sln wolfssl_server_IDF_v5_ESP32.vgdbproj
components
wolfssl
include user_settings.h
CMakeLists.txt Kconfig README.md component.mk
main
include main.h server-tls.h time_helper.h wifi_connect.h
CMakeLists.txt Kconfig.projbuild component.mk main.c server-tls.c time_helper.c wifi_connect.c
CMakeLists.txt Makefile README.md README_server_sm.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp32c2 sdkconfig.defaults.esp8266 wolfssl_server_ESP8266.vgdbproj
wolfssl_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.vgdbproj
components
wolfssl
include user_settings.h
CMakeLists.txt Kconfig README.md component.mk
main
include main.h
CMakeLists.txt Kconfig.projbuild component.mk main.c
CMakeLists.txt Makefile README.md partitions_singleapp_large.csv sdkconfig.defaults sdkconfig.defaults.esp32 sdkconfig.defaults.esp32c3 sdkconfig.defaults.esp32c6 sdkconfig.defaults.esp32h2 sdkconfig.defaults.esp32s2 sdkconfig.defaults.esp32s3 sdkconfig.defaults.esp8266 testAll.sh testMonitor.sh wolfssl_test_ESP8266.sln wolfssl_test_ESP8266.vgdbproj
wolfssl_test_idf
VisualGDB VisualGDB_wolfssl_test_idf.sln VisualGDB_wolfssl_test_idf.vgdbproj
main CMakeLists.txt Kconfig.projbuild component.mk main.c main_wip.c.ex time_helper.c time_helper.h
CMakeLists.txt Kconfig.projbuild README.md component.mk sdkconfig.defaults
README.md
libs CMakeLists.txt README.md component.mk tigard.cfg
test CMakeLists.txt README.md component.mk test_wolfssl.c
README.md README_32se.md UPDATE.md compileAllExamples.sh dummy_config_h dummy_test_paths.h setup.sh setup_win.bat user_settings.h
README.md include.am
GCC-ARM
Header user_settings.h
Source armtarget.c benchmark_main.c test_main.c tls_client.c tls_server.c wolf_main.c
Makefile Makefile.bench Makefile.client Makefile.common Makefile.server Makefile.static Makefile.test README.md include.am linker.ld linker_fips.ld
Gaisler-BCC README.md include.am
HEXAGON
DSP Makefile wolfssl_dsp.idl
Makefile README.md build.sh ecc-verify-benchmark.c ecc-verify.c include.am user_settings.h
HEXIWEAR
wolfSSL_HW .cwGeneratedFileSetLog user_settings.h
IAR-EWARM
Projects
benchmark benchmark-main.c current_time.c wolfCrypt-benchmark.ewd wolfCrypt-benchmark.ewp
common minimum-startup.c wolfssl.icf
lib wolfSSL-Lib.ewd wolfSSL-Lib.ewp
test test-main.c wolfCrypt-test.ewd wolfCrypt-test.ewp
user_settings.h wolfssl.eww
embOS
SAMV71_XULT
embOS_SAMV71_XULT_Linker_Script samv71q21_wolfssl.icf
embOS_SAMV71_XULT_user_settings user_settings.h user_settings_simple_example.h user_settings_verbose_example.h
embOS_wolfcrypt_benchmark_SAMV71_XULT
Application runBenchmarks.c
README_wolfcrypt_benchmark wolfcrypt_benchmark.ewd wolfcrypt_benchmark.ewp
embOS_wolfcrypt_lib_SAMV71_XULT README_wolfcrypt_lib wolfcrypt_lib.ewd wolfcrypt_lib.ewp
embOS_wolfcrypt_test_SAMV71_XULT
Application runWolfcryptTests.c
README_wolfcrypt_test wolfcrypt_test.ewd wolfcrypt_test.ewp
README_SAMV71
custom_port
custom_port_Linker_Script samv71q21_wolfssl.icf
custom_port_user_settings user_settings.h
wolfcrypt_benchmark_custom_port
Application runBenchmarks.c
wolfcrypt_test_custom_port
Application runWolfcryptTests.c
README_custom_port
extract_trial_here README_extract_trial_here
README
.gitignore README
IAR-MSP430 Makefile README.md include.am main.c user_settings.h
INTIME-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.vcxproj
Infineon README.md include.am user_settings.h
KDS
config user_settings.h
include.am
LINUX-SGX README.md build.sh clean.sh include.am sgx_t_static.mk
LPCXPRESSO
lib_wolfssl lpc_18xx_port.c user_settings.h
wolf_example
src lpc_18xx_startup.c wolfssl_example.c
readme.txt
README.md
M68K
benchmark Makefile main.cpp
testwolfcrypt Makefile main.cpp
Makefile README.md include.am user_settings.h
MCUEXPRESSO
RT1170 fsl_caam_c.patch fsl_caam_h.patch user_settings.h
benchmark
source run_benchmark.c
wolfssl liblinks.xml
README.md include.am user_settings.h wolfcrypt_test.c
MDK-ARM
LPC43xx time-LCP43xx.c
MDK-ARM
wolfSSL Retarget.c cert_data.c cert_data.h config-BARE-METAL.h config-FS.h config-RTX-TCP-FS.h config-WOLFLIB.h main.c shell.c time-CortexM3-4.c time-dummy.c wolfssl_MDK_ARM.c wolfssl_MDK_ARM.h
STM32F2xx_StdPeriph_Lib time-STM32F2xx.c
MDK5-ARM
Conf user_settings.h
Inc wolfssl_MDK_ARM.h
Projects
CryptBenchmark Abstract.txt CryptBenchmark.sct CryptBenchmark.uvoptx CryptBenchmark.uvprojx main.c
CryptTest Abstract.txt CryptTest.sct CryptTest.uvoptx CryptTest.uvprojx main.c
EchoClient Abstract.txt EchoClient.uvoptx EchoClient.uvprojx main.c wolfssl-link.sct
EchoServer Abstract.txt EchoServer.uvoptx EchoServer.uvprojx main.c wolfssl-link.sct
SimpleClient Abstract.txt SimpleClient.uvoptx SimpleClient.uvprojx main.c wolfssl-link.sct
SimpleServer Abstract.txt SimpleServer.uvoptx SimpleServer.uvprojx main.c wolfssl-link.sct
wolfSSL-Full Abstract.txt main.c shell.c time-CortexM3-4.c wolfsslFull.uvoptx wolfsslFull.uvprojx
wolfSSL-Lib Abstract.txt wolfSSL-Lib.uvoptx wolfSSL-Lib.uvprojx
Src ssl-dummy.c
README.md include.am
MPLABX16
wolfcrypt_test.X
nbproject
private configurations.xml private.xml
configurations.xml include.am project.xml
Makefile
wolfssl.X
nbproject configurations.xml include.am project.xml
Makefile
README.md include.am main.c user_settings.h
MQX Makefile README-jp.md README.md client-tls.c include.am server-tls.c user_config.h user_settings.h
MSVS-2019-AZSPHERE
client client.c client.h
server server.c server.h
shared util.h
wolfssl_new_azsphere
HardwareDefinitions
avnet_mt3620_sk
inc
hw template_appliance.h
template_appliance.json
mt3620_rdb
inc
hw template_appliance.h
template_appliance.json
seeed_mt3620_mdb
inc
hw template_appliance.h
template_appliance.json
.gitignore CMakeLists.txt CMakeSettings.json app_manifest.json applibs_versions.h launch.vs.json main.c
README.md include.am user_settings.h
MYSQL CMakeLists_wolfCrypt.txt CMakeLists_wolfSSL.txt do.sh
NDS README.md
NETOS Makefile.wolfcrypt.inc README.md include.am user_settings.h user_settings.h-cert2425 user_settings.h-cert3389 wolfssl_netos_custom.c
OPENSTM32 README.md
PlatformIO
examples
wolfssl_benchmark
include README main.h
lib README
src CMakeLists.txt main.c
test README
CMakeLists.txt README.md platformio.ini sdkconfig.defaults wolfssl_benchmark.code-workspace
wolfssl_test
include README main.h
lib README
src CMakeLists.txt main.c
test README
CMakeLists.txt README.md platformio.ini sdkconfig.defaults wolfssl_test.code-workspace
README.md wolfssl_platformio.code-workspace
README.md include.am
QNX
CAAM-DRIVER Makefile
example-client Makefile client-tls.c
example-cmac Makefile cmac-test.c
example-server Makefile server-tls.c
testwolfcrypt Makefile
wolfssl Makefile user_settings.h
README.md include.am
RISCV
SIFIVE-HIFIVE1 Makefile README.md include.am main.c user_settings.h
SIFIVE-UNLEASHED README.md include.am
include.am
ROWLEY-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.hzp
Renesas
cs+
Projects
common strings.h unistd.h user_settings.h wolfssl_dummy.c
t4_demo README_en.txt README_jp.txt t4_demo.mtpj wolf_client.c wolf_demo.h wolf_main.c wolf_server.c
test test.mtpj test_main.c
wolfssl_lib wolfssl_lib.mtpj
README include.am
e2studio
DK-S7G2
benchmark-template
src app_entry.c
example_server-template
src app_entry.c
wolfcrypttest-template
src app_entry.c
wolfssl-template-project configuration.xml
README.md include.am user_settings.h
Projects
common strings.h unistd.h user_settings.h wolfssl_dummy.c
test
src key_data.c key_data.h test_main.c wolf_client.c wolf_server.c wolfssl_demo.h
tools generate_rsa_keypair.sh genhexbuf.pl rsa_pss_sign.sh
wolfssl
src .gitkeep
wolfcrypt
src .gitkeep
README include.am
RA6M3
benchmark-wolfcrypt
common .gitkeep
script .gitkeep
src wolfssl_thread_entry.c
client-wolfssl
common
src .gitkeep
script .gitkeep
src wolfssl_thread_entry.c
wolfssl_thread_entry.h
common
ra6m3g README.md
src freertos_tcp_port.c
user_settings.h util.h
server-wolfssl
common
src .gitkeep
script .gitkeep
src wolfssl_thread_entry.c
wolfssl_thread_entry.h
test-wolfcrypt
common .gitkeep
script .gitkeep
src wolfssl_thread_entry.c
wolfssl
src .gitkeep
wolfcrypt .gitkeep
README.md README_APRA6M_en.md README_APRA6M_jp.md include.am
RA6M3G README.md
RA6M4
common user_settings.h wolfssl_demo.h
test
key_data key_data.h key_data_sce.c
src
SEGGER_RTT myprint.c
common .gitignore
test_main.c wolf_client.c wolfssl_sce_unit_test.c
test_RA6M4Debug.launch
tools
example_keys generate_SignedCA.sh rsa_private.pem rsa_public.pem
README.md
README.md include.am
RX65N
GR-ROSE
common strings.h unistd.h user_settings.h wolfssl_dummy.c
smc smc.scfg
test
src key_data.c key_data.h test_main.c wolf_client.c wolf_server.c wolfssl_demo.h
test.rcpc test_HardwareDebug.launch
tools
example_keys generate_SignedCA.sh rsa_private.pem rsa_public.pem
README.md
wolfssl wolfssl.rcpc
README_EN.md README_JP.md include.am
RSK
resource section.esi
wolfssl wolfssl.rcpc
wolfssl_demo key_data.c key_data.h user_settings.h wolfssl_demo.c wolfssl_demo.h
InstructionManualForExample_RSK+RX65N-2MB_EN.pdf InstructionManualForExample_RSK+RX65N-2MB_JP.pdf README_EN.md README_JP.md include.am
RX72N
EnvisionKit
Simple
common sectioninfo.esi wolfssl_dummy.c
test
src
client simple_tcp_client.c simple_tls_tsip_client.c
server simple_tcp_server.c simple_tls_server.c
test_main.c wolfssl_simple_demo.h
test.rcpc test.scfg test_HardwareDebug.launch
wolfssl wolfssl.rcpc
README_EN.md README_JP.md
resource section.esi
tools
example_keys generate_SignedCA.sh rsa_private.pem rsa_public.pem
README.md
wolfssl wolfssl.rcpc
wolfssl_demo key_data.c key_data.h user_settings.h wolfssl_demo.c wolfssl_demo.h wolfssl_tsip_unit_test.c
InstructionManualForExample_RX72N_EnvisonKit_EN.pdf InstructionManualForExample_RX72N_EnvisonKit_JP.pdf README_EN.md README_JP.md include.am
RZN2L
common user_settings.h wolfssl_demo.h
test
src
serial_io app_print.c
test wolf_client.c wolf_server.c wolfssl_rsip_unit_test.c
wolfCrypt .gitignore
wolfSSL .gitignore
local_system_init.c rzn2l_tst_thread_entry.c wolfssl_dummy.c
README.md include.am
SK-S7G2
common user_settings.h
wolfssl_lib configuration.xml
.gitignore README.md include.am
STARCORE README.txt include.am starcore_test.c user_settings.h
STM32Cube README.md STM32_Benchmarks.md default_conf.ftl include.am main.c wolfssl_example.c wolfssl_example.h
SimplicityStudio README.md include.am test_wolf.c user_settings.h
TRUESTUDIO
wolfssl user_settings.h
README include.am
VS-ARM README.md include.am user_settings.h wolfssl.sln wolfssl.vcxproj
VS-AZURE-SPHERE
client app_manifest.json client.c client.h client.vcxproj
server app_manifest.json server.c server.h server.vcxproj
shared util.h
wolfcrypt_test app_manifest.json wolfcrypt_test.vcxproj
README.md include.am user_settings.h wolfssl.sln wolfssl.vcxproj
VisualDSP include.am user_settings.h wolf_tasks.c
WICED-STUDIO README include.am user_settings.h
WIN README.txt include.am test.vcxproj user_settings.h user_settings_dtls.h wolfssl-fips.sln wolfssl-fips.vcxproj
WIN-SGX ReadMe.txt include.am wolfSSL_SGX.edl wolfSSL_SGX.sln wolfSSL_SGX.vcxproj
WIN-SRTP-KDF-140-3 README.txt include.am resource.h test.vcxproj user_settings.h wolfssl-fips.rc wolfssl-fips.sln wolfssl-fips.vcxproj
WIN10 README.txt include.am resource.h test.vcxproj user_settings.h wolfssl-fips.rc wolfssl-fips.sln wolfssl-fips.vcxproj
WINCE README.md include.am user_settings.h user_settings.h.140-2-deprecated
WORKBENCH README.md include.am
XCODE
Benchmark
wolfBench
Assets.xcassets
AppIcon.appiconset Contents.json
Base.lproj LaunchScreen.storyboard Main.storyboard
AppDelegate.h AppDelegate.m Info.plist ViewController.h ViewController.m main.m
wolfBench.xcodeproj project.pbxproj
include.am
wolfssl-FIPS.xcodeproj project.pbxproj
wolfssl.xcodeproj project.pbxproj
wolfssl_testsuite.xcodeproj project.pbxproj
README.md build-for-i386.sh include.am user_settings.h
XCODE-FIPSv2
macOS-C++
Intel user_settings.h
M1 user_settings.h
include.am user_settings.h
XCODE-FIPSv5 README include.am user_settings.h
XCODE-FIPSv6 README include.am user_settings.h
XilinxSDK
2018_2 lscript.ld
2019_2
wolfCrypt_example
src lscript.ld
wolfCrypt_example_system wolfCrypt_example_system.sprj
2022_1
wolfCrypt_FreeRTOS_example wolfCrypt_FreeRTOS_example.prj
wolfCrypt_FreeRTOS_example_system wolfCrypt_FreeRTOS_example_system.sprj
wolfCrypt_example wolfCrypt_example.prj
wolfCrypt_example_system wolfCrypt_example_system.sprj
.gitignore
README.md bench.sh combine.sh eclipse_formatter_profile.xml graph.sh include.am user_settings.h wolfssl_example.c
apple-universal
wolfssl-multiplatform
wolfssl-multiplatform
Assets.xcassets
AccentColor.colorset Contents.json
AppIcon.appiconset Contents.json
Contents.json
ContentView.swift simple_client_example.c simple_client_example.h wolfssl-multiplatform-Bridging-Header.h wolfssl_multiplatform.entitlements wolfssl_multiplatformApp.swift wolfssl_test_driver.c wolfssl_test_driver.h
wolfssl-multiplatform.xcodeproj project.pbxproj
.gitignore README.md build-wolfssl-framework.sh include.am
iotsafe Makefile README.md ca-cert.c devices.c devices.h include.am main.c memory-tls.c startup.c target.ld user_settings.h
iotsafe-raspberrypi Makefile README.md client-tls13.c include.am main.c
mynewt README.md apps.wolfcrypttest.pkg.yml crypto.wolfssl.pkg.yml crypto.wolfssl.syscfg.yml include.am setup.sh
zephyr README.md include.am
include.am
RTOS
nuttx
wolfssl .gitignore Kconfig Make.defs Makefile README.md setup-wolfssl.sh user_settings.h
include.am
bsdkm Makefile README.md bsdkm_wc_port.h include.am wolfkmod.c wolfkmod_aes.c x86_vecreg.c
certs
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.pem
3072 client-cert.der client-cert.pem client-key.der client-key.pem client-keyPub.der include.am
4096 client-cert.der client-cert.pem client-key.der client-key.pem client-keyPub.der include.am
acert
rsa_pss acert.pem acert_ietf.pem acert_ietf_pubkey.pem acert_pubkey.pem
acert.pem acert_ietf.pem acert_ietf_pubkey.pem acert_pubkey.pem include.am
aia ca-issuers-cert.pem multi-aia-cert.pem overflow-aia-cert.pem
crl
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.pem
hash_der 0fdb2da4.r0
hash_pem 0fdb2da4.r0
bad_time_fmt.pem ca-int-ecc.pem ca-int.pem ca-int2-ecc.pem ca-int2.pem caEcc384Crl.pem caEccCrl.der caEccCrl.pem cliCrl.pem client-int-ecc.pem client-int.pem crl.der crl.pem crl.revoked crl2.der crl2.pem crl_reason.pem crl_rsapss.pem eccCliCRL.pem eccSrvCRL.pem gencrls.sh include.am server-goodaltCrl.pem server-goodaltwildCrl.pem server-goodcnCrl.pem server-goodcnwildCrl.pem server-int-ecc.pem server-int.pem wolfssl.cnf
dilithium bench_dilithium_level2_key.der bench_dilithium_level3_key.der bench_dilithium_level5_key.der include.am
ecc 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.cnf
ed25519 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.pem
ed448 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.pem
external DigiCertGlobalRootCA.pem README.txt ca-digicert-ev.pem ca-globalsign-root.pem ca-google-root.pem ca_collection.pem include.am
falcon bench_falcon_level1_key.der bench_falcon_level5_key.der include.am
intermediate
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.conf
ca-ecc-bad-aki.der ca-ecc-bad-aki.pem ca-int-cert.der ca-int-cert.pem ca-int-ecc-cert.der ca-int-ecc-cert.pem ca-int-ecc-key.der ca-int-ecc-key.pem ca-int-key.der ca-int-key.pem ca-int2-cert.der ca-int2-cert.pem ca-int2-ecc-cert.der ca-int2-ecc-cert.pem ca-int2-ecc-key.der ca-int2-ecc-key.pem ca-int2-key.der ca-int2-key.pem client-chain-alt-ecc.pem client-chain-alt.pem client-chain-ecc.der client-chain-ecc.pem client-chain.der client-chain.pem client-int-cert.der client-int-cert.pem client-int-ecc-cert.der client-int-ecc-cert.pem genintcerts.sh include.am server-chain-alt-ecc.pem server-chain-alt.pem server-chain-ecc.der server-chain-ecc.pem server-chain-short.pem server-chain.der server-chain.pem server-int-cert.der server-int-cert.pem server-int-ecc-cert.der server-int-ecc-cert.pem
lms 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.am
mldsa 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.der
ocsp 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.der
p521 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.pem
renewcerts wolfssl.cnf
rpk client-cert-rpk.der client-ecc-cert-rpk.der include.am server-cert-rpk.der server-ecc-cert-rpk.der
rsapss 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.pem
sia timestamping-sia-cert.pem
slhdsa 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.pem
sm2 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.pem
statickeys 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.pem
test
expired expired-ca.der expired-ca.pem expired-cert.der expired-cert.pem
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.p7s
test-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.sh
test-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.pem
xmss 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.am
ca-cert-chain.der ca-cert.der ca-cert.pem ca-ecc-cert.der ca-ecc-cert.pem ca-ecc-key.der ca-ecc-key.pem ca-ecc384-cert.der ca-ecc384-cert.pem ca-ecc384-key.der ca-ecc384-key.pem ca-key-pkcs8-attribute.der ca-key.der ca-key.pem check_dates.sh client-absolute-urn.pem client-ca-cert.der client-ca-cert.pem client-ca.pem client-cert-ext.der client-cert-ext.pem client-cert.der client-cert.pem client-crl-dist.der client-crl-dist.pem client-ecc-ca-cert.der client-ecc-ca-cert.pem client-ecc-cert.der client-ecc-cert.pem client-ecc384-cert.der client-ecc384-cert.pem client-ecc384-key.der client-ecc384-key.pem client-key.der client-key.pem client-keyEnc.pem client-keyPub.der client-keyPub.pem client-relative-uri.pem client-uri-cert.pem csr.attr.der csr.dsa.der csr.dsa.pem csr.ext.der csr.signed.der dh-priv-2048.der dh-priv-2048.pem dh-pub-2048.der dh-pub-2048.pem dh-pubkey-2048.der dh2048.der dh2048.pem dh3072.der dh3072.pem dh4096.der dh4096.pem dsa-pubkey-2048.der dsa2048.der dsa2048.pem dsa3072.der dsaparams.der dsaparams.pem ecc-client-key.der ecc-client-key.pem ecc-client-keyPub.der ecc-client-keyPub.pem ecc-key-comp.pem ecc-keyPkcs8.der ecc-keyPkcs8.pem ecc-keyPkcs8Enc.der ecc-keyPkcs8Enc.pem ecc-keyPub.der ecc-keyPub.pem ecc-params.der ecc-params.pem ecc-privOnlyCert.pem ecc-privOnlyKey.pem ecc-privkey.der ecc-privkey.pem ecc-privkeyPkcs8.der ecc-privkeyPkcs8.pem ecc-rsa-server.p12 empty-issuer-cert.pem entity-no-ca-bool-cert.pem entity-no-ca-bool-key.pem fpki-cert.der fpki-certpol-cert.der gen_revoked.sh include.am renewcerts.sh rid-cert.der rsa-pub-2048.pem rsa2048.der rsa3072.der server-cert-chain.der server-cert.der server-cert.pem server-ecc-comp.der server-ecc-comp.pem server-ecc-rsa.der server-ecc-rsa.pem server-ecc-self.der server-ecc-self.pem server-ecc.der server-ecc.pem server-ecc384-cert.der server-ecc384-cert.pem server-ecc384-key.der server-ecc384-key.pem server-key.der server-key.pem server-keyEnc.pem server-keyPkcs8.der server-keyPkcs8.pem server-keyPkcs8Enc.der server-keyPkcs8Enc.pem server-keyPkcs8Enc12.pem server-keyPkcs8Enc2.pem server-keyPub.der server-keyPub.pem server-revoked-cert.pem server-revoked-key.pem taoCert.txt test-ber-exp02-05-2022.p7b test-degenerate.p7b test-multiple-recipients.p7b test-servercert-rc2.p12 test-servercert.p12 test-stream-dec.p7b test-stream-sign.p7b wolfssl-website-ca.pem x942dh2048.der x942dh2048.pem
cmake
consumer CMakeLists.txt README.md main.c
modules FindARIA.cmake FindOQS.cmake
Config.cmake.in README.md config.in functions.cmake include.am options.h.in wolfssl-config-version.cmake.in wolfssl-targets.cmake.in
debian
source format
changelog.in control.in copyright include.am libwolfssl-dev.install libwolfssl.install rules.in
doc
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.h
header_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.h
formats
html
html_changes
search search.css search.js
customdoxygen.css doxygen.css menu.js menudata.js tabs.css
Doxyfile footer.html header.html mainpage.dox
pdf Doxyfile header.tex
images wolfssl_logo.png
QUIC.md README.txt README_DOXYGEN check_api.sh generate_documentation.sh include.am
examples
asn1 asn1.c dumpasn1.cfg gen_oid_names.rb include.am oid_names.h
async Makefile README.md async_client.c async_server.c async_tls.c async_tls.h include.am user_settings.h
benchmark include.am tls_bench.c tls_bench.h
client client.c client.h client.sln client.vcproj client.vcxproj include.am
configs 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.h
crypto_policies
default wolfssl.txt
future wolfssl.txt
legacy wolfssl.txt
echoclient echoclient.c echoclient.h echoclient.sln echoclient.vcproj echoclient.vcxproj include.am quit
echoserver echoserver.c echoserver.h echoserver.sln echoserver.vcproj echoserver.vcxproj include.am
ocsp_responder include.am ocsp_responder.c ocsp_responder.h
pem include.am pem.c
sctp include.am sctp-client-dtls.c sctp-client.c sctp-server-dtls.c sctp-server.c
server include.am server.c server.h server.sln server.vcproj server.vcxproj
README.md include.am
linuxkm
patches
5.10.17 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v10v17.patch
5.10.236 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v10v236.patch
5.14.0-570.58.1.el9_6 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v14-570v58v1-el9_6.patch
5.15 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v15.patch
5.17 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v17.patch
5.17-ubuntu-jammy-tegra WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-5v17-ubuntu-jammy-tegra.patch
6.1.73 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-6v1v73.patch
6.12 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-6v12.patch
6.15 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-6v15.patch
7.0 WOLFSSL_LINUXKM_HAVE_GET_RANDOM_CALLBACKS-7v0.patch
regen-patches.sh
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.c
m4 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.m4
mcapi
wolfcrypt_mcapi.X
nbproject configurations.xml include.am project.xml
Makefile
wolfcrypt_test.X
nbproject configurations.xml include.am project.xml
Makefile
wolfssl.X
nbproject configurations.xml include.am project.xml
Makefile
zlib.X
nbproject configurations.xml include.am project.xml
Makefile
PIC32MZ-serial.h README crypto.c crypto.h include.am mcapi_test.c user_settings.h
mplabx
wolfcrypt_benchmark.X
nbproject configurations.xml include.am project.xml
Makefile
wolfcrypt_test.X
nbproject configurations.xml include.am project.xml
Makefile
wolfssl.X
nbproject configurations.xml include.am project.xml
Makefile
PIC32MZ-serial.h README benchmark_main.c include.am test_main.c user_settings.h
mqx
util_lib
Sources include.am util.c util.h
wolfcrypt_benchmark
Debugger K70FN1M0.mem init_kinetis.tcl mass_erase_kinetis.tcl
Sources include.am main.c main.h
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.launch
wolfcrypt_test
Debugger K70FN1M0.mem init_kinetis.tcl mass_erase_kinetis.tcl
Sources include.am main.c main.h
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.launch
wolfssl include.am
wolfssl_client
Debugger K70FN1M0.mem init_kinetis.tcl mass_erase_kinetis.tcl
Sources include.am main.c main.h
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.launch
README
rpm include.am spec.in
scripts
bench bench_functions.sh
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.sh
src 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.c
sslSniffer
sslSnifferTest README_WIN.md include.am snifftest.c sslSniffTest.vcproj sslSniffTest.vcxproj
README.md sslSniffer.vcproj sslSniffer.vcxproj
support gen-debug-trace-error-codes.sh include.am wolfssl.pc.in
tests
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.h
emnet
IP IP.h
Makefile emnet_nonblock_test.c emnet_shim.c
freertos-mem-track-repro FreeRTOS.h repro.c run.sh semphr.h task.h user_settings.h
swdev .gitignore Makefile README.md swdev.c swdev.h swdev_loader.c swdev_loader.h user_settings.h
CONF_FILES_README.md NCONF_test.cnf README TXT_DB.txt api.c include.am quic.c srp.c suites.c test-altchains.conf test-chains.conf test-dhprime.conf test-dtls-downgrade.conf test-dtls-fails-cipher.conf test-dtls-fails.conf test-dtls-group.conf test-dtls-mtu.conf test-dtls-reneg-client.conf test-dtls-reneg-server.conf test-dtls-resume.conf test-dtls-sha2.conf test-dtls-srtp-fails.conf test-dtls-srtp.conf test-dtls.conf test-dtls13-cid.conf test-dtls13-downgrade-fails.conf test-dtls13-downgrade.conf test-dtls13-pq-hybrid-extra-frag.conf test-dtls13-pq-hybrid-extra.conf test-dtls13-pq-hybrid-frag.conf test-dtls13-pq-standalone-frag.conf test-dtls13-pq-standalone.conf test-dtls13-psk.conf test-dtls13.conf test-ecc-cust-curves.conf test-ed25519.conf test-ed448.conf test-enckeys.conf test-fails.conf test-maxfrag-dtls.conf test-maxfrag.conf test-p521.conf test-psk-no-id-sha2.conf test-psk-no-id.conf test-psk.conf test-rsapss.conf test-sctp-sha2.conf test-sctp.conf test-sha2.conf test-sig.conf test-sm2.conf test-tls-downgrade.conf test-tls13-down.conf test-tls13-ecc.conf test-tls13-pq-hybrid-extra.conf test-tls13-pq-hybrid.conf test-tls13-pq-standalone.conf test-tls13-psk-certs.conf test-tls13-psk.conf test-tls13-slhdsa-fail.conf test-tls13-slhdsa-sha2.conf test-tls13-slhdsa-shake.conf test-tls13.conf test-trustpeer.conf test.conf unit.c unit.h utils.c utils.h w64wrapper.c
testsuite include.am testsuite.c testsuite.sln testsuite.vcproj testsuite.vcxproj utils.c utils.h
tirtos
packages
ti
net
wolfssl
tests
EK_TM4C1294XL
wolfcrypt
benchmark TM4C1294NC.icf benchmark.cfg main.c package.bld.hide package.xdc
test TM4C1294NC.icf main.c package.bld.hide package.xdc test.cfg
package.bld package.xdc package.xs
.gitignore README include.am products.mak wolfssl.bld wolfssl.mak
wolfcrypt
benchmark README.md benchmark-VS2022.sln benchmark-VS2022.vcxproj benchmark-VS2022.vcxproj.user benchmark.c benchmark.h benchmark.sln benchmark.vcproj benchmark.vcxproj include.am
src
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.py
README.md esp32_aes.c esp32_mp.c esp32_sha.c esp32_util.c esp_sdk_mem_lib.c esp_sdk_time_lib.c esp_sdk_wifi_lib.c
Renesas 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.c
af_alg afalg_aes.c afalg_hash.c wc_afalg.c
aria aria-crypt.c aria-cryptocb.c
arm 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.c
atmel README.md atmel.c
autosar README.md cryif.c crypto.c csm.c include.am test.c
caam 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.c
cavium README.md README_Octeon.md cavium_nitrox.c cavium_octeon_sync.c
cuda README.md aes-cuda.cu
cypress README.md psoc6_crypto.c
devcrypto README.md devcrypto_aes.c devcrypto_ecdsa.c devcrypto_hash.c devcrypto_hmac.c devcrypto_rsa.c devcrypto_x25519.c wc_devcrypto.c
intel README.md quickassist.c quickassist_mem.c quickassist_sync.c
iotsafe iotsafe.c
kcapi README.md kcapi_aes.c kcapi_dh.c kcapi_ecc.c kcapi_hash.c kcapi_hmac.c kcapi_rsa.c
liboqs liboqs.c
maxim README.md max3266x.c maxq10xx.c
mynewt mynewt_port.c
nxp README.md README_SE050.md casper_port.c dcp_port.c hashcrypt_port.c ksdk_port.c se050_port.c
pic32 pic32mz-crypt.c
ppc32 ppc32-sha256-asm.S ppc32-sha256-asm_c.c ppc32-sha256-asm_cr.c
psa README.md psa.c psa_aes.c psa_hash.c psa_pkcbs.c
riscv riscv-64-aes.c riscv-64-chacha.c riscv-64-poly1305.c riscv-64-sha256.c riscv-64-sha3.c riscv-64-sha512.c
rpi_pico README.md pico.c
silabs README.md silabs_aes.c silabs_ecc.c silabs_hash.c silabs_random.c
st README.md STM32MP13.md STM32MP25.md stm32.c stsafe.c
ti ti-aes.c ti-ccm.c ti-des3.c ti-hash.c
tropicsquare README.md tropic01.c
xilinx xil-aesgcm.c xil-sha3.c xil-versal-glue.c xil-versal-trng.c
nrf51.c
ASN_TEMPLATE.md aes.c aes_asm.S aes_asm.asm aes_gcm_asm.S aes_gcm_asm.asm aes_gcm_x86_asm.S aes_xts_asm.S aes_xts_asm.asm arc4.c ascon.c asm.c asn.c asn_orig.c async.c blake2b.c blake2s.c camellia.c chacha.c chacha20_poly1305.c chacha_asm.S chacha_asm.asm cmac.c coding.c compress.c cpuid.c cryptocb.c curve25519.c curve448.c des3.c dh.c dilithium.c dsa.c ecc.c ecc_fp.c eccsi.c ed25519.c ed448.c error.c evp.c evp_pk.c falcon.c fe_448.c fe_low_mem.c fe_operations.c fe_x25519_128.h fe_x25519_asm.S fp_mont_small.i fp_mul_comba_12.i fp_mul_comba_17.i fp_mul_comba_20.i fp_mul_comba_24.i fp_mul_comba_28.i fp_mul_comba_3.i fp_mul_comba_32.i fp_mul_comba_4.i fp_mul_comba_48.i fp_mul_comba_6.i fp_mul_comba_64.i fp_mul_comba_7.i fp_mul_comba_8.i fp_mul_comba_9.i fp_mul_comba_small_set.i fp_sqr_comba_12.i fp_sqr_comba_17.i fp_sqr_comba_20.i fp_sqr_comba_24.i fp_sqr_comba_28.i fp_sqr_comba_3.i fp_sqr_comba_32.i fp_sqr_comba_4.i fp_sqr_comba_48.i fp_sqr_comba_6.i fp_sqr_comba_64.i fp_sqr_comba_7.i fp_sqr_comba_8.i fp_sqr_comba_9.i fp_sqr_comba_small_set.i ge_448.c ge_low_mem.c ge_operations.c hash.c hmac.c hpke.c include.am integer.c kdf.c logging.c md2.c md4.c md5.c memory.c misc.c pkcs12.c pkcs7.c poly1305.c poly1305_asm.S poly1305_asm.asm puf.c pwdbased.c random.c rc2.c ripemd.c rng_bank.c rsa.c sakke.c sha.c sha256.c sha256_asm.S sha3.c sha3_asm.S sha512.c sha512_asm.S signature.c siphash.c sm2.c sm3.c sm3_asm.S sm4.c sp_arm32.c sp_arm64.c sp_armthumb.c sp_c32.c sp_c64.c sp_cortexm.c sp_dsp32.c sp_int.c sp_sm2_arm32.c sp_sm2_arm64.c sp_sm2_armthumb.c sp_sm2_c32.c sp_sm2_c64.c sp_sm2_cortexm.c sp_sm2_x86_64.c sp_sm2_x86_64_asm.S sp_x86_64.c sp_x86_64_asm.S sp_x86_64_asm.asm srp.c tfm.c wc_dsp.c wc_encrypt.c wc_lms.c wc_lms_impl.c wc_mldsa_asm.S wc_mlkem.c wc_mlkem_asm.S wc_mlkem_poly.c wc_pkcs11.c wc_port.c wc_she.c wc_slhdsa.c wc_xmss.c wc_xmss_impl.c wolfentropy.c wolfevent.c wolfmath.c
test README.md include.am test-VS2022.sln test-VS2022.vcxproj test-VS2022.vcxproj.user test.c test.h test.sln test.vcproj test_paths.h.in
wolfssl
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.h
wolfcrypt
port
Espressif esp-sdk-lib.h esp32-crypt.h esp_crt_bundle.h
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.h
af_alg afalg_hash.h wc_afalg.h
aria aria-crypt.h aria-cryptocb.h
arm cryptoCell.h
atmel atmel.h
autosar CryIf.h Crypto.h Csm.h StandardTypes.h
caam 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.h
cavium cavium_nitrox.h cavium_octeon_sync.h
cypress psoc6_crypto.h
devcrypto wc_devcrypto.h
intel quickassist.h quickassist_mem.h quickassist_sync.h
iotsafe iotsafe.h
kcapi kcapi_dh.h kcapi_ecc.h kcapi_hash.h kcapi_hmac.h kcapi_rsa.h wc_kcapi.h
liboqs liboqs.h
maxim max3266x-cryptocb.h max3266x.h maxq10xx.h
nxp casper_port.h dcp_port.h hashcrypt_port.h ksdk_port.h se050_port.h
pic32 pic32mz-crypt.h
psa psa.h
riscv riscv-64-asm.h
rpi_pico pico.h
silabs silabs_aes.h silabs_ecc.h silabs_hash.h silabs_random.h
st stm32.h stsafe.h
ti ti-ccm.h ti-hash.h
tropicsquare tropic01.h
xilinx xil-sha3.h xil-versal-glue.h xil-versal-trng.h
nrf51.h
aes.h arc4.h ascon.h asn.h asn_public.h async.h blake2-impl.h blake2-int.h blake2.h camellia.h chacha.h chacha20_poly1305.h cmac.h coding.h compress.h cpuid.h cryptocb.h curve25519.h curve448.h des3.h dh.h dilithium.h dsa.h ecc.h eccsi.h ed25519.h ed448.h error-crypt.h falcon.h fe_448.h fe_operations.h fips_test.h ge_448.h ge_operations.h hash.h hmac.h hpke.h include.am integer.h kdf.h libwolfssl_sources.h libwolfssl_sources_asm.h logging.h md2.h md4.h md5.h mem_track.h memory.h misc.h mpi_class.h mpi_superclass.h oid_sum.h pkcs11.h pkcs12.h pkcs7.h poly1305.h puf.h pwdbased.h random.h rc2.h ripemd.h rng_bank.h rsa.h sakke.h selftest.h settings.h sha.h sha256.h sha3.h sha512.h signature.h siphash.h sm2.h sm3.h sm4.h sp.h sp_int.h srp.h tfm.h types.h visibility.h wc_encrypt.h wc_lms.h wc_mlkem.h wc_pkcs11.h wc_port.h wc_she.h wc_slhdsa.h wc_xmss.h wolfentropy.h wolfevent.h wolfmath.h
callbacks.h certs_test.h certs_test_sm.h crl.h error-ssl.h include.am internal.h ocsp.h options.h.in quic.h sniffer.h sniffer_error.h sniffer_error.rc ssl.h test.h version.h version.h.in wolfio.h
wrapper
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.adb
.gitignore alire.toml examples.gpr
tests
src
support test_support.adb test_support.ads tests_root_suite.adb tests_root_suite.ads
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.adb
.gitignore README.md alire.toml tests.gpr valgrind.supp
.gitignore README.md ada_binding.c alire.toml default.gpr include.am restricted.adc user_settings.h wolfssl-full_runtime.adb wolfssl-full_runtime.ads wolfssl.adb wolfssl.ads wolfssl.gpr
CSharp
wolfCrypt-Test
Properties AssemblyInfo.cs
App.config wolfCrypt-Test.cs wolfCrypt-Test.csproj
wolfSSL-DTLS-PSK-Server
Properties AssemblyInfo.cs
App.config wolfSSL-DTLS-PSK-Server.cs wolfSSL-DTLS-PSK-Server.csproj
wolfSSL-DTLS-Server
Properties AssemblyInfo.cs
App.config wolfSSL-DTLS-Server.cs wolfSSL-DTLS-Server.csproj
wolfSSL-Example-IOCallbacks
Properties AssemblyInfo.cs
App.config wolfSSL-Example-IOCallbacks.cs wolfSSL-Example-IOCallbacks.csproj
wolfSSL-TLS-Client
Properties AssemblyInfo.cs
App.config wolfSSL-TLS-Client.cs wolfSSL-TLS-Client.csproj
wolfSSL-TLS-PSK-Client
Properties AssemblyInfo.cs
App.config wolfSSL-TLS-PSK-Client.cs wolfSSL-TLS-PSK-Client.csproj
wolfSSL-TLS-PSK-Server
Properties AssemblyInfo.cs
App.config wolfSSL-TLS-PSK-Server.cs wolfSSL-TLS-PSK-Server.csproj
wolfSSL-TLS-Server
Properties AssemblyInfo.cs
App.config wolfSSL-TLS-Server.cs wolfSSL-TLS-Server.csproj
wolfSSL-TLS-ServerThreaded
Properties AssemblyInfo.cs
App.config wolfSSL-TLS-ServerThreaded.cs wolfSSL-TLS-ServerThreaded.csproj
wolfSSL_CSharp
Properties AssemblyInfo.cs Resources.Designer.cs Resources.resx
X509.cs wolfCrypt.cs wolfSSL.cs wolfSSL_CSharp.csproj
README.md include.am user_settings.h wolfSSL_CSharp.sln wolfssl.vcxproj
python README.md
rust
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.rs
tests
common mod.rs
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.rs
CHANGELOG.md Cargo.lock Cargo.toml Makefile README.md build.rs headers.h
Makefile README.md include.am
include.am
zephyr
samples
wolfssl_benchmark
boards native_sim.conf nrf5340dk_nrf5340_cpuapp.conf nrf5340dk_nrf5340_cpuapp_ns.conf
CMakeLists.txt README install_test.sh prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.conf
wolfssl_test
boards native_sim.conf nrf5340dk_nrf5340_cpuapp.conf nrf5340dk_nrf5340_cpuapp_ns.conf
CMakeLists.txt README install_test.sh prj-no-malloc.conf prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.conf
wolfssl_tls_sock
boards native_sim.conf
src tls_sock.c
CMakeLists.txt README install_sample.sh prj-no-malloc.conf prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.conf
wolfssl_tls_thread
boards native_sim.conf nrf5340dk_nrf5340_cpuapp.conf nrf5340dk_nrf5340_cpuapp_ns.conf
src tls_threaded.c
CMakeLists.txt README install_sample.sh prj.conf sample.yaml zephyr_legacy.conf zephyr_v4.1.conf
wolfssl options.h
CMakeLists.txt Kconfig Kconfig.tls-generic README.md include.am module.yml user_settings-no-malloc.h user_settings.h zephyr_init.c
.codespellexcludelines .cyignore .editorconfig .gitignore .wolfssl_known_macro_extras AUTHORS CMakeLists.txt CMakePresets.json CMakeSettings.json COPYING ChangeLog.md INSTALL LICENSING LPCExpresso.cproject LPCExpresso.project Makefile.am README README-async.md README.md SCRIPTS-LIST SECURITY-POLICY.md SECURITY-REPORT-TEMPLATE.md Vagrantfile autogen.sh commit-tests.sh configure.ac fips-check.sh fips-hash.sh gencertbuf.pl input pull_to_vagrant.sh quit resource.h stamp-h.in valgrind-bash.supp valgrind-error.sh wnr-example.conf wolfssl-VS2022.vcxproj wolfssl.rc wolfssl.vcproj wolfssl.vcxproj wolfssl64.sln
.clangd .gitignore DOCS.md Makefile README.md assert.c core.c crypto.c env.c fs.c http.c ini.c json.c log.c luna.h main.c makext.mk path.c process.c request.c sqlite.c stash.c template.c util.c
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 */