/* * Copyright (c) 2003, 2018, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2014, Red Hat Inc. All rights reserved. * Copyright (c) 2015, Linaro Ltd. All rights reserved. * Copyright (c) 2015-2018, Azul Systems, Inc. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. * * This code is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License * version 2 for more details (a copy is included in the LICENSE file that * accompanied this code). * * You should have received a copy of the GNU General Public License version * 2 along with this work; if not, write to the Free Software Foundation, * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. * * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA * or visit www.oracle.com if you need additional information or have any * questions. * */ #include "precompiled.hpp" #include "runtime/deoptimization.hpp" #include "runtime/frame.inline.hpp" #include "runtime/stubRoutines.hpp" #include "runtime/thread.inline.hpp" #include "utilities/globalDefinitions.hpp" // Implementation of the platform-specific part of StubRoutines - for // a description of how to extend it, see the stubRoutines.hpp file. #ifdef COMPILER2 address StubRoutines::aarch32::_idiv_entry = NULL; address StubRoutines::aarch32::_irem_entry = NULL; address StubRoutines::aarch32::_partial_subtype_check = NULL; address StubRoutines::aarch32::_string_compress_neon = NULL; address StubRoutines::aarch32::_string_inflate_neon = NULL; #endif /** * crc_table[] from jdk/src/share/native/java/util/zip/zlib-1.2.5/crc32.h */ juint StubRoutines::aarch32::_crc_table[] ATTRIBUTE_ALIGNED(4096) = { // Table 0 0x00000000UL, 0x77073096UL, 0xee0e612cUL, 0x990951baUL, 0x076dc419UL, 0x706af48fUL, 0xe963a535UL, 0x9e6495a3UL, 0x0edb8832UL, 0x79dcb8a4UL, 0xe0d5e91eUL, 0x97d2d988UL, 0x09b64c2bUL, 0x7eb17cbdUL, 0xe7b82d07UL, 0x90bf1d91UL, 0x1db71064UL, 0x6ab020f2UL, 0xf3b97148UL, 0x84be41deUL, 0x1adad47dUL, 0x6ddde4ebUL, 0xf4d4b551UL, 0x83d385c7UL, 0x136c9856UL, 0x646ba8c0UL, 0xfd62f97aUL, 0x8a65c9ecUL, 0x14015c4fUL, 0x63066cd9UL, 0xfa0f3d63UL, 0x8d080df5UL, 0x3b6e20c8UL, 0x4c69105eUL, 0xd56041e4UL, 0xa2677172UL, 0x3c03e4d1UL, 0x4b04d447UL, 0xd20d85fdUL, 0xa50ab56bUL, 0x35b5a8faUL, 0x42b2986cUL, 0xdbbbc9d6UL, 0xacbcf940UL, 0x32d86ce3UL, 0x45df5c75UL, 0xdcd60dcfUL, 0xabd13d59UL, 0x26d930acUL, 0x51de003aUL, 0xc8d75180UL, 0xbfd06116UL, 0x21b4f4b5UL, 0x56b3c423UL, 0xcfba9599UL, 0xb8bda50fUL, 0x2802b89eUL, 0x5f058808UL, 0xc60cd9b2UL, 0xb10be924UL, 0x2f6f7c87UL, 0x58684c11UL, 0xc1611dabUL, 0xb6662d3dUL, 0x76dc4190UL, 0x01db7106UL, 0x98d220bcUL, 0xefd5102aUL, 0x71b18589UL, 0x06b6b51fUL, 0x9fbfe4a5UL, 0xe8b8d433UL, 0x7807c9a2UL, 0x0f00f934UL, 0x9609a88eUL, 0xe10e9818UL, 0x7f6a0dbbUL, 0x086d3d2dUL, 0x91646c97UL, 0xe6635c01UL, 0x6b6b51f4UL, 0x1c6c6162UL, 0x856530d8UL, 0xf262004eUL, 0x6c0695edUL, 0x1b01a57bUL, 0x8208f4c1UL, 0xf50fc457UL, 0x65b0d9c6UL, 0x12b7e950UL, 0x8bbeb8eaUL, 0xfcb9887cUL, 0x62dd1ddfUL, 0x15da2d49UL, 0x8cd37cf3UL, 0xfbd44c65UL, 0x4db26158UL, 0x3ab551ceUL, 0xa3bc0074UL, 0xd4bb30e2UL, 0x4adfa541UL, 0x3dd895d7UL, 0xa4d1c46dUL, 0xd3d6f4fbUL, 0x4369e96aUL, 0x346ed9fcUL, 0xad678846UL, 0xda60b8d0UL, 0x44042d73UL, 0x33031de5UL, 0xaa0a4c5fUL, 0xdd0d7cc9UL, 0x5005713cUL, 0x270241aaUL, 0xbe0b1010UL, 0xc90c2086UL, 0x5768b525UL, 0x206f85b3UL, 0xb966d409UL, 0xce61e49fUL, 0x5edef90eUL, 0x29d9c998UL, 0xb0d09822UL, 0xc7d7a8b4UL, 0x59b33d17UL, 0x2eb40d81UL, 0xb7bd5c3bUL, 0xc0ba6cadUL, 0xedb88320UL, 0x9abfb3b6UL, 0x03b6e20cUL, 0x74b1d29aUL, 0xead54739UL, 0x9dd277afUL, 0x04db2615UL, 0x73dc1683UL, 0xe3630b12UL, 0x94643b84UL, 0x0d6d6a3eUL, 0x7a6a5aa8UL, 0xe40ecf0bUL, 0x9309ff9dUL, 0x0a00ae27UL, 0x7d079eb1UL, 0xf00f9344UL, 0x8708a3d2UL, 0x1e01f268UL, 0x6906c2feUL, 0xf762575dUL, 0x806567cbUL, 0x196c3671UL, 0x6e6b06e7UL, 0xfed41b76UL, 0x89d32be0UL, 0x10da7a5aUL, 0x67dd4accUL, 0xf9b9df6fUL, 0x8ebeeff9UL, 0x17b7be43UL, 0x60b08ed5UL, 0xd6d6a3e8UL, 0xa1d1937eUL, 0x38d8c2c4UL, 0x4fdff252UL, 0xd1bb67f1UL, 0xa6bc5767UL, 0x3fb506ddUL, 0x48b2364bUL, 0xd80d2bdaUL, 0xaf0a1b4cUL, 0x36034af6UL, 0x41047a60UL, 0xdf60efc3UL, 0xa867df55UL, 0x316e8eefUL, 0x4669be79UL, 0xcb61b38cUL, 0xbc66831aUL, 0x256fd2a0UL, 0x5268e236UL, 0xcc0c7795UL, 0xbb0b4703UL, 0x220216b9UL, 0x5505262fUL, 0xc5ba3bbeUL, 0xb2bd0b28UL, 0x2bb45a92UL, 0x5cb36a04UL, 0xc2d7ffa7UL, 0xb5d0cf31UL, 0x2cd99e8bUL, 0x5bdeae1dUL, 0x9b64c2b0UL, 0xec63f226UL, 0x756aa39cUL, 0x026d930aUL, 0x9c0906a9UL, 0xeb0e363fUL, 0x72076785UL, 0x05005713UL, 0x95bf4a82UL, 0xe2b87a14UL, 0x7bb12baeUL, 0x0cb61b38UL, 0x92d28e9bUL, 0xe5d5be0dUL, 0x7cdcefb7UL, 0x0bdbdf21UL, 0x86d3d2d4UL, 0xf1d4e242UL, 0x68ddb3f8UL, 0x1fda836eUL, 0x81be16cdUL, 0xf6b9265bUL, 0x6fb077e1UL, 0x18b74777UL, 0x88085ae6UL, 0xff0f6a70UL, 0x66063bcaUL, 0x11010b5cUL, 0x8f659effUL, 0xf862ae69UL, 0x616bffd3UL, 0x166ccf45UL, 0xa00ae278UL, 0xd70dd2eeUL, 0x4e048354UL, 0x3903b3c2UL, 0xa7672661UL, 0xd06016f7UL, 0x4969474dUL, 0x3e6e77dbUL, 0xaed16a4aUL, 0xd9d65adcUL, 0x40df0b66UL, 0x37d83bf0UL, 0xa9bcae53UL, 0xdebb9ec5UL, 0x47b2cf7fUL, 0x30b5ffe9UL, 0xbdbdf21cUL, 0xcabac28aUL, 0x53b39330UL, 0x24b4a3a6UL, 0xbad03605UL, 0xcdd70693UL, 0x54de5729UL, 0x23d967bfUL, 0xb3667a2eUL, 0xc4614ab8UL, 0x5d681b02UL, 0x2a6f2b94UL, 0xb40bbe37UL, 0xc30c8ea1UL, 0x5a05df1bUL, 0x2d02ef8dUL, // Table 1 0x00000000UL, 0x191b3141UL, 0x32366282UL, 0x2b2d53c3UL, 0x646cc504UL, 0x7d77f445UL, 0x565aa786UL, 0x4f4196c7UL, 0xc8d98a08UL, 0xd1c2bb49UL, 0xfaefe88aUL, 0xe3f4d9cbUL, 0xacb54f0cUL, 0xb5ae7e4dUL, 0x9e832d8eUL, 0x87981ccfUL, 0x4ac21251UL, 0x53d92310UL, 0x78f470d3UL, 0x61ef4192UL, 0x2eaed755UL, 0x37b5e614UL, 0x1c98b5d7UL, 0x05838496UL, 0x821b9859UL, 0x9b00a918UL, 0xb02dfadbUL, 0xa936cb9aUL, 0xe6775d5dUL, 0xff6c6c1cUL, 0xd4413fdfUL, 0xcd5a0e9eUL, 0x958424a2UL, 0x8c9f15e3UL, 0xa7b24620UL, 0xbea97761UL, 0xf1e8e1a6UL, 0xe8f3d0e7UL, 0xc3de8324UL, 0xdac5b265UL, 0x5d5daeaaUL, 0x44469febUL, 0x6f6bcc28UL, 0x7670fd69UL, 0x39316baeUL, 0x202a5aefUL, 0x0b07092cUL, 0x121c386dUL, 0xdf4636f3UL, 0xc65d07b2UL, 0xed705471UL, 0xf46b6530UL, 0xbb2af3f7UL, 0xa231c2b6UL, 0x891c9175UL, 0x9007a034UL, 0x179fbcfbUL, 0x0e848dbaUL, 0x25a9de79UL, 0x3cb2ef38UL, 0x73f379ffUL, 0x6ae848beUL, 0x41c51b7dUL, 0x58de2a3cUL, 0xf0794f05UL, 0xe9627e44UL, 0xc24f2d87UL, 0xdb541cc6UL, 0x94158a01UL, 0x8d0ebb40UL, 0xa623e883UL, 0xbf38d9c2UL, 0x38a0c50dUL, 0x21bbf44cUL, 0x0a96a78fUL, 0x138d96ceUL, 0x5ccc0009UL, 0x45d73148UL, 0x6efa628bUL, 0x77e153caUL, 0xbabb5d54UL, 0xa3a06c15UL, 0x888d3fd6UL, 0x91960e97UL, 0xded79850UL, 0xc7cca911UL, 0xece1fad2UL, 0xf5facb93UL, 0x7262d75cUL, 0x6b79e61dUL, 0x4054b5deUL, 0x594f849fUL, 0x160e1258UL, 0x0f152319UL, 0x243870daUL, 0x3d23419bUL, 0x65fd6ba7UL, 0x7ce65ae6UL, 0x57cb0925UL, 0x4ed03864UL, 0x0191aea3UL, 0x188a9fe2UL, 0x33a7cc21UL, 0x2abcfd60UL, 0xad24e1afUL, 0xb43fd0eeUL, 0x9f12832dUL, 0x8609b26cUL, 0xc94824abUL, 0xd05315eaUL, 0xfb7e4629UL, 0xe2657768UL, 0x2f3f79f6UL, 0x362448b7UL, 0x1d091b74UL, 0x04122a35UL, 0x4b53bcf2UL, 0x52488db3UL, 0x7965de70UL, 0x607eef31UL, 0xe7e6f3feUL, 0xfefdc2bfUL, 0xd5d0917cUL, 0xcccba03dUL, 0x838a36faUL, 0x9a9107bbUL, 0xb1bc5478UL, 0xa8a76539UL, 0x3b83984bUL, 0x2298a90aUL, 0x09b5fac9UL, 0x10aecb88UL, 0x5fef5d4fUL, 0x46f46c0eUL, 0x6dd93fcdUL, 0x74c20e8cUL, 0xf35a1243UL, 0xea412302UL, 0xc16c70c1UL, 0xd8774180UL, 0x9736d747UL, 0x8e2de606UL, 0xa500b5c5UL, 0xbc1b8484UL, 0x71418a1aUL, 0x685abb5bUL, 0x4377e898UL, 0x5a6cd9d9UL, 0x152d4f1eUL, 0x0c367e5fUL, 0x271b2d9cUL, 0x3e001cddUL, 0xb9980012UL, 0xa0833153UL, 0x8bae6290UL, 0x92b553d1UL, 0xddf4c516UL, 0xc4eff457UL, 0xefc2a794UL, 0xf6d996d5UL, 0xae07bce9UL, 0xb71c8da8UL, 0x9c31de6bUL, 0x852aef2aUL, 0xca6b79edUL, 0xd37048acUL, 0xf85d1b6fUL, 0xe1462a2eUL, 0x66de36e1UL, 0x7fc507a0UL, 0x54e85463UL, 0x4df36522UL, 0x02b2f3e5UL, 0x1ba9c2a4UL, 0x30849167UL, 0x299fa026UL, 0xe4c5aeb8UL, 0xfdde9ff9UL, 0xd6f3cc3aUL, 0xcfe8fd7bUL, 0x80a96bbcUL, 0x99b25afdUL, 0xb29f093eUL, 0xab84387fUL, 0x2c1c24b0UL, 0x350715f1UL, 0x1e2a4632UL, 0x07317773UL, 0x4870e1b4UL, 0x516bd0f5UL, 0x7a468336UL, 0x635db277UL, 0xcbfad74eUL, 0xd2e1e60fUL, 0xf9ccb5ccUL, 0xe0d7848dUL, 0xaf96124aUL, 0xb68d230bUL, 0x9da070c8UL, 0x84bb4189UL, 0x03235d46UL, 0x1a386c07UL, 0x31153fc4UL, 0x280e0e85UL, 0x674f9842UL, 0x7e54a903UL, 0x5579fac0UL, 0x4c62cb81UL, 0x8138c51fUL, 0x9823f45eUL, 0xb30ea79dUL, 0xaa1596dcUL, 0xe554001bUL, 0xfc4f315aUL, 0xd7626299UL, 0xce7953d8UL, 0x49e14f17UL, 0x50fa7e56UL, 0x7bd72d95UL, 0x62cc1cd4UL, 0x2d8d8a13UL, 0x3496bb52UL, 0x1fbbe891UL, 0x06a0d9d0UL, 0x5e7ef3ecUL, 0x4765c2adUL, 0x6c48916eUL, 0x7553a02fUL, 0x3a1236e8UL, 0x230907a9UL, 0x0824546aUL, 0x113f652bUL, 0x96a779e4UL, 0x8fbc48a5UL, 0xa4911b66UL, 0xbd8a2a27UL, 0xf2cbbce0UL, 0xebd08da1UL, 0xc0fdde62UL, 0xd9e6ef23UL, 0x14bce1bdUL, 0x0da7d0fcUL, 0x268a833fUL, 0x3f91b27eUL, 0x70d024b9UL, 0x69cb15f8UL, 0x42e6463bUL, 0x5bfd777aUL, 0xdc656bb5UL, 0xc57e5af4UL, 0xee530937UL, 0xf7483876UL, 0xb809aeb1UL, 0xa1129ff0UL, 0x8a3fcc33UL, 0x9324fd72UL, // Table 2 0x00000000UL, 0x01c26a37UL, 0x0384d46eUL, 0x0246be59UL, 0x0709a8dcUL, 0x06cbc2ebUL, 0x048d7cb2UL, 0x054f1685UL, 0x0e1351b8UL, 0x0fd13b8fUL, 0x0d9785d6UL, 0x0c55efe1UL, 0x091af964UL, 0x08d89353UL, 0x0a9e2d0aUL, 0x0b5c473dUL, 0x1c26a370UL, 0x1de4c947UL, 0x1fa2771eUL, 0x1e601d29UL, 0x1b2f0bacUL, 0x1aed619bUL, 0x18abdfc2UL, 0x1969b5f5UL, 0x1235f2c8UL, 0x13f798ffUL, 0x11b126a6UL, 0x10734c91UL, 0x153c5a14UL, 0x14fe3023UL, 0x16b88e7aUL, 0x177ae44dUL, 0x384d46e0UL, 0x398f2cd7UL, 0x3bc9928eUL, 0x3a0bf8b9UL, 0x3f44ee3cUL, 0x3e86840bUL, 0x3cc03a52UL, 0x3d025065UL, 0x365e1758UL, 0x379c7d6fUL, 0x35dac336UL, 0x3418a901UL, 0x3157bf84UL, 0x3095d5b3UL, 0x32d36beaUL, 0x331101ddUL, 0x246be590UL, 0x25a98fa7UL, 0x27ef31feUL, 0x262d5bc9UL, 0x23624d4cUL, 0x22a0277bUL, 0x20e69922UL, 0x2124f315UL, 0x2a78b428UL, 0x2bbade1fUL, 0x29fc6046UL, 0x283e0a71UL, 0x2d711cf4UL, 0x2cb376c3UL, 0x2ef5c89aUL, 0x2f37a2adUL, 0x709a8dc0UL, 0x7158e7f7UL, 0x731e59aeUL, 0x72dc3399UL, 0x7793251cUL, 0x76514f2bUL, 0x7417f172UL, 0x75d59b45UL, 0x7e89dc78UL, 0x7f4bb64fUL, 0x7d0d0816UL, 0x7ccf6221UL, 0x798074a4UL, 0x78421e93UL, 0x7a04a0caUL, 0x7bc6cafdUL, 0x6cbc2eb0UL, 0x6d7e4487UL, 0x6f38fadeUL, 0x6efa90e9UL, 0x6bb5866cUL, 0x6a77ec5bUL, 0x68315202UL, 0x69f33835UL, 0x62af7f08UL, 0x636d153fUL, 0x612bab66UL, 0x60e9c151UL, 0x65a6d7d4UL, 0x6464bde3UL, 0x662203baUL, 0x67e0698dUL, 0x48d7cb20UL, 0x4915a117UL, 0x4b531f4eUL, 0x4a917579UL, 0x4fde63fcUL, 0x4e1c09cbUL, 0x4c5ab792UL, 0x4d98dda5UL, 0x46c49a98UL, 0x4706f0afUL, 0x45404ef6UL, 0x448224c1UL, 0x41cd3244UL, 0x400f5873UL, 0x4249e62aUL, 0x438b8c1dUL, 0x54f16850UL, 0x55330267UL, 0x5775bc3eUL, 0x56b7d609UL, 0x53f8c08cUL, 0x523aaabbUL, 0x507c14e2UL, 0x51be7ed5UL, 0x5ae239e8UL, 0x5b2053dfUL, 0x5966ed86UL, 0x58a487b1UL, 0x5deb9134UL, 0x5c29fb03UL, 0x5e6f455aUL, 0x5fad2f6dUL, 0xe1351b80UL, 0xe0f771b7UL, 0xe2b1cfeeUL, 0xe373a5d9UL, 0xe63cb35cUL, 0xe7fed96bUL, 0xe5b86732UL, 0xe47a0d05UL, 0xef264a38UL, 0xeee4200fUL, 0xeca29e56UL, 0xed60f461UL, 0xe82fe2e4UL, 0xe9ed88d3UL, 0xebab368aUL, 0xea695cbdUL, 0xfd13b8f0UL, 0xfcd1d2c7UL, 0xfe976c9eUL, 0xff5506a9UL, 0xfa1a102cUL, 0xfbd87a1bUL, 0xf99ec442UL, 0xf85cae75UL, 0xf300e948UL, 0xf2c2837fUL, 0xf0843d26UL, 0xf1465711UL, 0xf4094194UL, 0xf5cb2ba3UL, 0xf78d95faUL, 0xf64fffcdUL, 0xd9785d60UL, 0xd8ba3757UL, 0xdafc890eUL, 0xdb3ee339UL, 0xde71f5bcUL, 0xdfb39f8bUL, 0xddf521d2UL, 0xdc374be5UL, 0xd76b0cd8UL, 0xd6a966efUL, 0xd4efd8b6UL, 0xd52db281UL, 0xd062a404UL, 0xd1a0ce33UL, 0xd3e6706aUL, 0xd2241a5dUL, 0xc55efe10UL, 0xc49c9427UL, 0xc6da2a7eUL, 0xc7184049UL, 0xc25756ccUL, 0xc3953cfbUL, 0xc1d382a2UL, 0xc011e895UL, 0xcb4dafa8UL, 0xca8fc59fUL, 0xc8c97bc6UL, 0xc90b11f1UL, 0xcc440774UL, 0xcd866d43UL, 0xcfc0d31aUL, 0xce02b92dUL, 0x91af9640UL, 0x906dfc77UL, 0x922b422eUL, 0x93e92819UL, 0x96a63e9cUL, 0x976454abUL, 0x9522eaf2UL, 0x94e080c5UL, 0x9fbcc7f8UL, 0x9e7eadcfUL, 0x9c381396UL, 0x9dfa79a1UL, 0x98b56f24UL, 0x99770513UL, 0x9b31bb4aUL, 0x9af3d17dUL, 0x8d893530UL, 0x8c4b5f07UL, 0x8e0de15eUL, 0x8fcf8b69UL, 0x8a809decUL, 0x8b42f7dbUL, 0x89044982UL, 0x88c623b5UL, 0x839a6488UL, 0x82580ebfUL, 0x801eb0e6UL, 0x81dcdad1UL, 0x8493cc54UL, 0x8551a663UL, 0x8717183aUL, 0x86d5720dUL, 0xa9e2d0a0UL, 0xa820ba97UL, 0xaa6604ceUL, 0xaba46ef9UL, 0xaeeb787cUL, 0xaf29124bUL, 0xad6fac12UL, 0xacadc625UL, 0xa7f18118UL, 0xa633eb2fUL, 0xa4755576UL, 0xa5b73f41UL, 0xa0f829c4UL, 0xa13a43f3UL, 0xa37cfdaaUL, 0xa2be979dUL, 0xb5c473d0UL, 0xb40619e7UL, 0xb640a7beUL, 0xb782cd89UL, 0xb2cddb0cUL, 0xb30fb13bUL, 0xb1490f62UL, 0xb08b6555UL, 0xbbd72268UL, 0xba15485fUL, 0xb853f606UL, 0xb9919c31UL, 0xbcde8ab4UL, 0xbd1ce083UL, 0xbf5a5edaUL, 0xbe9834edUL, // Table 3 0x00000000UL, 0xb8bc6765UL, 0xaa09c88bUL, 0x12b5afeeUL, 0x8f629757UL, 0x37def032UL, 0x256b5fdcUL, 0x9dd738b9UL, 0xc5b428efUL, 0x7d084f8aUL, 0x6fbde064UL, 0xd7018701UL, 0x4ad6bfb8UL, 0xf26ad8ddUL, 0xe0df7733UL, 0x58631056UL, 0x5019579fUL, 0xe8a530faUL, 0xfa109f14UL, 0x42acf871UL, 0xdf7bc0c8UL, 0x67c7a7adUL, 0x75720843UL, 0xcdce6f26UL, 0x95ad7f70UL, 0x2d111815UL, 0x3fa4b7fbUL, 0x8718d09eUL, 0x1acfe827UL, 0xa2738f42UL, 0xb0c620acUL, 0x087a47c9UL, 0xa032af3eUL, 0x188ec85bUL, 0x0a3b67b5UL, 0xb28700d0UL, 0x2f503869UL, 0x97ec5f0cUL, 0x8559f0e2UL, 0x3de59787UL, 0x658687d1UL, 0xdd3ae0b4UL, 0xcf8f4f5aUL, 0x7733283fUL, 0xeae41086UL, 0x525877e3UL, 0x40edd80dUL, 0xf851bf68UL, 0xf02bf8a1UL, 0x48979fc4UL, 0x5a22302aUL, 0xe29e574fUL, 0x7f496ff6UL, 0xc7f50893UL, 0xd540a77dUL, 0x6dfcc018UL, 0x359fd04eUL, 0x8d23b72bUL, 0x9f9618c5UL, 0x272a7fa0UL, 0xbafd4719UL, 0x0241207cUL, 0x10f48f92UL, 0xa848e8f7UL, 0x9b14583dUL, 0x23a83f58UL, 0x311d90b6UL, 0x89a1f7d3UL, 0x1476cf6aUL, 0xaccaa80fUL, 0xbe7f07e1UL, 0x06c36084UL, 0x5ea070d2UL, 0xe61c17b7UL, 0xf4a9b859UL, 0x4c15df3cUL, 0xd1c2e785UL, 0x697e80e0UL, 0x7bcb2f0eUL, 0xc377486bUL, 0xcb0d0fa2UL, 0x73b168c7UL, 0x6104c729UL, 0xd9b8a04cUL, 0x446f98f5UL, 0xfcd3ff90UL, 0xee66507eUL, 0x56da371bUL, 0x0eb9274dUL, 0xb6054028UL, 0xa4b0efc6UL, 0x1c0c88a3UL, 0x81dbb01aUL, 0x3967d77fUL, 0x2bd27891UL, 0x936e1ff4UL, 0x3b26f703UL, 0x839a9066UL, 0x912f3f88UL, 0x299358edUL, 0xb4446054UL, 0x0cf80731UL, 0x1e4da8dfUL, 0xa6f1cfbaUL, 0xfe92dfecUL, 0x462eb889UL, 0x549b1767UL, 0xec277002UL, 0x71f048bbUL, 0xc94c2fdeUL, 0xdbf98030UL, 0x6345e755UL, 0x6b3fa09cUL, 0xd383c7f9UL, 0xc1366817UL, 0x798a0f72UL, 0xe45d37cbUL, 0x5ce150aeUL, 0x4e54ff40UL, 0xf6e89825UL, 0xae8b8873UL, 0x1637ef16UL, 0x048240f8UL, 0xbc3e279dUL, 0x21e91f24UL, 0x99557841UL, 0x8be0d7afUL, 0x335cb0caUL, 0xed59b63bUL, 0x55e5d15eUL, 0x47507eb0UL, 0xffec19d5UL, 0x623b216cUL, 0xda874609UL, 0xc832e9e7UL, 0x708e8e82UL, 0x28ed9ed4UL, 0x9051f9b1UL, 0x82e4565fUL, 0x3a58313aUL, 0xa78f0983UL, 0x1f336ee6UL, 0x0d86c108UL, 0xb53aa66dUL, 0xbd40e1a4UL, 0x05fc86c1UL, 0x1749292fUL, 0xaff54e4aUL, 0x322276f3UL, 0x8a9e1196UL, 0x982bbe78UL, 0x2097d91dUL, 0x78f4c94bUL, 0xc048ae2eUL, 0xd2fd01c0UL, 0x6a4166a5UL, 0xf7965e1cUL, 0x4f2a3979UL, 0x5d9f9697UL, 0xe523f1f2UL, 0x4d6b1905UL, 0xf5d77e60UL, 0xe762d18eUL, 0x5fdeb6ebUL, 0xc2098e52UL, 0x7ab5e937UL, 0x680046d9UL, 0xd0bc21bcUL, 0x88df31eaUL, 0x3063568fUL, 0x22d6f961UL, 0x9a6a9e04UL, 0x07bda6bdUL, 0xbf01c1d8UL, 0xadb46e36UL, 0x15080953UL, 0x1d724e9aUL, 0xa5ce29ffUL, 0xb77b8611UL, 0x0fc7e174UL, 0x9210d9cdUL, 0x2aacbea8UL, 0x38191146UL, 0x80a57623UL, 0xd8c66675UL, 0x607a0110UL, 0x72cfaefeUL, 0xca73c99bUL, 0x57a4f122UL, 0xef189647UL, 0xfdad39a9UL, 0x45115eccUL, 0x764dee06UL, 0xcef18963UL, 0xdc44268dUL, 0x64f841e8UL, 0xf92f7951UL, 0x41931e34UL, 0x5326b1daUL, 0xeb9ad6bfUL, 0xb3f9c6e9UL, 0x0b45a18cUL, 0x19f00e62UL, 0xa14c6907UL, 0x3c9b51beUL, 0x842736dbUL, 0x96929935UL, 0x2e2efe50UL, 0x2654b999UL, 0x9ee8defcUL, 0x8c5d7112UL, 0x34e11677UL, 0xa9362eceUL, 0x118a49abUL, 0x033fe645UL, 0xbb838120UL, 0xe3e09176UL, 0x5b5cf613UL, 0x49e959fdUL, 0xf1553e98UL, 0x6c820621UL, 0xd43e6144UL, 0xc68bceaaUL, 0x7e37a9cfUL, 0xd67f4138UL, 0x6ec3265dUL, 0x7c7689b3UL, 0xc4caeed6UL, 0x591dd66fUL, 0xe1a1b10aUL, 0xf3141ee4UL, 0x4ba87981UL, 0x13cb69d7UL, 0xab770eb2UL, 0xb9c2a15cUL, 0x017ec639UL, 0x9ca9fe80UL, 0x241599e5UL, 0x36a0360bUL, 0x8e1c516eUL, 0x866616a7UL, 0x3eda71c2UL, 0x2c6fde2cUL, 0x94d3b949UL, 0x090481f0UL, 0xb1b8e695UL, 0xa30d497bUL, 0x1bb12e1eUL, 0x43d23e48UL, 0xfb6e592dUL, 0xe9dbf6c3UL, 0x516791a6UL, 0xccb0a91fUL, 0x740cce7aUL, 0x66b96194UL, 0xde0506f1UL, // Constants for Neon CRC32 implementation, 128-bit operation // k3 = 0xba8ccbe8 = x^160 mod poly - bit reversed // k4 = 0xa06a2517 = x^128 mod poly - bit reversed // poly = x^32 + x^26 + x^23 + x^22 + x^16 + x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x^1 + x^0 + 0 0xba8ccbe8, 0xa06a2517, // k4:k3 0x8cbae8cb, 0x6aa01725, // byte swap 0xcbe8ba8c, 0x2517a06a, // word swap 0xe8cb8cba, 0x17256aa0, // byte swap of word swap }; /** * CRC32C constants lookup table */ juint StubRoutines::aarch32::_crc32c_table[] = { // Table 0 0x00000000UL, 0xf26b8303UL, 0xe13b70f7UL, 0x1350f3f4UL, 0xc79a971fUL, 0x35f1141cUL, 0x26a1e7e8UL, 0xd4ca64ebUL, 0x8ad958cfUL, 0x78b2dbccUL, 0x6be22838UL, 0x9989ab3bUL, 0x4d43cfd0UL, 0xbf284cd3UL, 0xac78bf27UL, 0x5e133c24UL, 0x105ec76fUL, 0xe235446cUL, 0xf165b798UL, 0x030e349bUL, 0xd7c45070UL, 0x25afd373UL, 0x36ff2087UL, 0xc494a384UL, 0x9a879fa0UL, 0x68ec1ca3UL, 0x7bbcef57UL, 0x89d76c54UL, 0x5d1d08bfUL, 0xaf768bbcUL, 0xbc267848UL, 0x4e4dfb4bUL, 0x20bd8edeUL, 0xd2d60dddUL, 0xc186fe29UL, 0x33ed7d2aUL, 0xe72719c1UL, 0x154c9ac2UL, 0x061c6936UL, 0xf477ea35UL, 0xaa64d611UL, 0x580f5512UL, 0x4b5fa6e6UL, 0xb93425e5UL, 0x6dfe410eUL, 0x9f95c20dUL, 0x8cc531f9UL, 0x7eaeb2faUL, 0x30e349b1UL, 0xc288cab2UL, 0xd1d83946UL, 0x23b3ba45UL, 0xf779deaeUL, 0x05125dadUL, 0x1642ae59UL, 0xe4292d5aUL, 0xba3a117eUL, 0x4851927dUL, 0x5b016189UL, 0xa96ae28aUL, 0x7da08661UL, 0x8fcb0562UL, 0x9c9bf696UL, 0x6ef07595UL, 0x417b1dbcUL, 0xb3109ebfUL, 0xa0406d4bUL, 0x522bee48UL, 0x86e18aa3UL, 0x748a09a0UL, 0x67dafa54UL, 0x95b17957UL, 0xcba24573UL, 0x39c9c670UL, 0x2a993584UL, 0xd8f2b687UL, 0x0c38d26cUL, 0xfe53516fUL, 0xed03a29bUL, 0x1f682198UL, 0x5125dad3UL, 0xa34e59d0UL, 0xb01eaa24UL, 0x42752927UL, 0x96bf4dccUL, 0x64d4cecfUL, 0x77843d3bUL, 0x85efbe38UL, 0xdbfc821cUL, 0x2997011fUL, 0x3ac7f2ebUL, 0xc8ac71e8UL, 0x1c661503UL, 0xee0d9600UL, 0xfd5d65f4UL, 0x0f36e6f7UL, 0x61c69362UL, 0x93ad1061UL, 0x80fde395UL, 0x72966096UL, 0xa65c047dUL, 0x5437877eUL, 0x4767748aUL, 0xb50cf789UL, 0xeb1fcbadUL, 0x197448aeUL, 0x0a24bb5aUL, 0xf84f3859UL, 0x2c855cb2UL, 0xdeeedfb1UL, 0xcdbe2c45UL, 0x3fd5af46UL, 0x7198540dUL, 0x83f3d70eUL, 0x90a324faUL, 0x62c8a7f9UL, 0xb602c312UL, 0x44694011UL, 0x5739b3e5UL, 0xa55230e6UL, 0xfb410cc2UL, 0x092a8fc1UL, 0x1a7a7c35UL, 0xe811ff36UL, 0x3cdb9bddUL, 0xceb018deUL, 0xdde0eb2aUL, 0x2f8b6829UL, 0x82f63b78UL, 0x709db87bUL, 0x63cd4b8fUL, 0x91a6c88cUL, 0x456cac67UL, 0xb7072f64UL, 0xa457dc90UL, 0x563c5f93UL, 0x082f63b7UL, 0xfa44e0b4UL, 0xe9141340UL, 0x1b7f9043UL, 0xcfb5f4a8UL, 0x3dde77abUL, 0x2e8e845fUL, 0xdce5075cUL, 0x92a8fc17UL, 0x60c37f14UL, 0x73938ce0UL, 0x81f80fe3UL, 0x55326b08UL, 0xa759e80bUL, 0xb4091bffUL, 0x466298fcUL, 0x1871a4d8UL, 0xea1a27dbUL, 0xf94ad42fUL, 0x0b21572cUL, 0xdfeb33c7UL, 0x2d80b0c4UL, 0x3ed04330UL, 0xccbbc033UL, 0xa24bb5a6UL, 0x502036a5UL, 0x4370c551UL, 0xb11b4652UL, 0x65d122b9UL, 0x97baa1baUL, 0x84ea524eUL, 0x7681d14dUL, 0x2892ed69UL, 0xdaf96e6aUL, 0xc9a99d9eUL, 0x3bc21e9dUL, 0xef087a76UL, 0x1d63f975UL, 0x0e330a81UL, 0xfc588982UL, 0xb21572c9UL, 0x407ef1caUL, 0x532e023eUL, 0xa145813dUL, 0x758fe5d6UL, 0x87e466d5UL, 0x94b49521UL, 0x66df1622UL, 0x38cc2a06UL, 0xcaa7a905UL, 0xd9f75af1UL, 0x2b9cd9f2UL, 0xff56bd19UL, 0x0d3d3e1aUL, 0x1e6dcdeeUL, 0xec064eedUL, 0xc38d26c4UL, 0x31e6a5c7UL, 0x22b65633UL, 0xd0ddd530UL, 0x0417b1dbUL, 0xf67c32d8UL, 0xe52cc12cUL, 0x1747422fUL, 0x49547e0bUL, 0xbb3ffd08UL, 0xa86f0efcUL, 0x5a048dffUL, 0x8ecee914UL, 0x7ca56a17UL, 0x6ff599e3UL, 0x9d9e1ae0UL, 0xd3d3e1abUL, 0x21b862a8UL, 0x32e8915cUL, 0xc083125fUL, 0x144976b4UL, 0xe622f5b7UL, 0xf5720643UL, 0x07198540UL, 0x590ab964UL, 0xab613a67UL, 0xb831c993UL, 0x4a5a4a90UL, 0x9e902e7bUL, 0x6cfbad78UL, 0x7fab5e8cUL, 0x8dc0dd8fUL, 0xe330a81aUL, 0x115b2b19UL, 0x020bd8edUL, 0xf0605beeUL, 0x24aa3f05UL, 0xd6c1bc06UL, 0xc5914ff2UL, 0x37faccf1UL, 0x69e9f0d5UL, 0x9b8273d6UL, 0x88d28022UL, 0x7ab90321UL, 0xae7367caUL, 0x5c18e4c9UL, 0x4f48173dUL, 0xbd23943eUL, 0xf36e6f75UL, 0x0105ec76UL, 0x12551f82UL, 0xe03e9c81UL, 0x34f4f86aUL, 0xc69f7b69UL, 0xd5cf889dUL, 0x27a40b9eUL, 0x79b737baUL, 0x8bdcb4b9UL, 0x988c474dUL, 0x6ae7c44eUL, 0xbe2da0a5UL, 0x4c4623a6UL, 0x5f16d052UL, 0xad7d5351UL, // Table 1 0x00000000UL, 0x13a29877UL, 0x274530eeUL, 0x34e7a899UL, 0x4e8a61dcUL, 0x5d28f9abUL, 0x69cf5132UL, 0x7a6dc945UL, 0x9d14c3b8UL, 0x8eb65bcfUL, 0xba51f356UL, 0xa9f36b21UL, 0xd39ea264UL, 0xc03c3a13UL, 0xf4db928aUL, 0xe7790afdUL, 0x3fc5f181UL, 0x2c6769f6UL, 0x1880c16fUL, 0x0b225918UL, 0x714f905dUL, 0x62ed082aUL, 0x560aa0b3UL, 0x45a838c4UL, 0xa2d13239UL, 0xb173aa4eUL, 0x859402d7UL, 0x96369aa0UL, 0xec5b53e5UL, 0xfff9cb92UL, 0xcb1e630bUL, 0xd8bcfb7cUL, 0x7f8be302UL, 0x6c297b75UL, 0x58ced3ecUL, 0x4b6c4b9bUL, 0x310182deUL, 0x22a31aa9UL, 0x1644b230UL, 0x05e62a47UL, 0xe29f20baUL, 0xf13db8cdUL, 0xc5da1054UL, 0xd6788823UL, 0xac154166UL, 0xbfb7d911UL, 0x8b507188UL, 0x98f2e9ffUL, 0x404e1283UL, 0x53ec8af4UL, 0x670b226dUL, 0x74a9ba1aUL, 0x0ec4735fUL, 0x1d66eb28UL, 0x298143b1UL, 0x3a23dbc6UL, 0xdd5ad13bUL, 0xcef8494cUL, 0xfa1fe1d5UL, 0xe9bd79a2UL, 0x93d0b0e7UL, 0x80722890UL, 0xb4958009UL, 0xa737187eUL, 0xff17c604UL, 0xecb55e73UL, 0xd852f6eaUL, 0xcbf06e9dUL, 0xb19da7d8UL, 0xa23f3fafUL, 0x96d89736UL, 0x857a0f41UL, 0x620305bcUL, 0x71a19dcbUL, 0x45463552UL, 0x56e4ad25UL, 0x2c896460UL, 0x3f2bfc17UL, 0x0bcc548eUL, 0x186eccf9UL, 0xc0d23785UL, 0xd370aff2UL, 0xe797076bUL, 0xf4359f1cUL, 0x8e585659UL, 0x9dface2eUL, 0xa91d66b7UL, 0xbabffec0UL, 0x5dc6f43dUL, 0x4e646c4aUL, 0x7a83c4d3UL, 0x69215ca4UL, 0x134c95e1UL, 0x00ee0d96UL, 0x3409a50fUL, 0x27ab3d78UL, 0x809c2506UL, 0x933ebd71UL, 0xa7d915e8UL, 0xb47b8d9fUL, 0xce1644daUL, 0xddb4dcadUL, 0xe9537434UL, 0xfaf1ec43UL, 0x1d88e6beUL, 0x0e2a7ec9UL, 0x3acdd650UL, 0x296f4e27UL, 0x53028762UL, 0x40a01f15UL, 0x7447b78cUL, 0x67e52ffbUL, 0xbf59d487UL, 0xacfb4cf0UL, 0x981ce469UL, 0x8bbe7c1eUL, 0xf1d3b55bUL, 0xe2712d2cUL, 0xd69685b5UL, 0xc5341dc2UL, 0x224d173fUL, 0x31ef8f48UL, 0x050827d1UL, 0x16aabfa6UL, 0x6cc776e3UL, 0x7f65ee94UL, 0x4b82460dUL, 0x5820de7aUL, 0xfbc3faf9UL, 0xe861628eUL, 0xdc86ca17UL, 0xcf245260UL, 0xb5499b25UL, 0xa6eb0352UL, 0x920cabcbUL, 0x81ae33bcUL, 0x66d73941UL, 0x7575a136UL, 0x419209afUL, 0x523091d8UL, 0x285d589dUL, 0x3bffc0eaUL, 0x0f186873UL, 0x1cbaf004UL, 0xc4060b78UL, 0xd7a4930fUL, 0xe3433b96UL, 0xf0e1a3e1UL, 0x8a8c6aa4UL, 0x992ef2d3UL, 0xadc95a4aUL, 0xbe6bc23dUL, 0x5912c8c0UL, 0x4ab050b7UL, 0x7e57f82eUL, 0x6df56059UL, 0x1798a91cUL, 0x043a316bUL, 0x30dd99f2UL, 0x237f0185UL, 0x844819fbUL, 0x97ea818cUL, 0xa30d2915UL, 0xb0afb162UL, 0xcac27827UL, 0xd960e050UL, 0xed8748c9UL, 0xfe25d0beUL, 0x195cda43UL, 0x0afe4234UL, 0x3e19eaadUL, 0x2dbb72daUL, 0x57d6bb9fUL, 0x447423e8UL, 0x70938b71UL, 0x63311306UL, 0xbb8de87aUL, 0xa82f700dUL, 0x9cc8d894UL, 0x8f6a40e3UL, 0xf50789a6UL, 0xe6a511d1UL, 0xd242b948UL, 0xc1e0213fUL, 0x26992bc2UL, 0x353bb3b5UL, 0x01dc1b2cUL, 0x127e835bUL, 0x68134a1eUL, 0x7bb1d269UL, 0x4f567af0UL, 0x5cf4e287UL, 0x04d43cfdUL, 0x1776a48aUL, 0x23910c13UL, 0x30339464UL, 0x4a5e5d21UL, 0x59fcc556UL, 0x6d1b6dcfUL, 0x7eb9f5b8UL, 0x99c0ff45UL, 0x8a626732UL, 0xbe85cfabUL, 0xad2757dcUL, 0xd74a9e99UL, 0xc4e806eeUL, 0xf00fae77UL, 0xe3ad3600UL, 0x3b11cd7cUL, 0x28b3550bUL, 0x1c54fd92UL, 0x0ff665e5UL, 0x759baca0UL, 0x663934d7UL, 0x52de9c4eUL, 0x417c0439UL, 0xa6050ec4UL, 0xb5a796b3UL, 0x81403e2aUL, 0x92e2a65dUL, 0xe88f6f18UL, 0xfb2df76fUL, 0xcfca5ff6UL, 0xdc68c781UL, 0x7b5fdfffUL, 0x68fd4788UL, 0x5c1aef11UL, 0x4fb87766UL, 0x35d5be23UL, 0x26772654UL, 0x12908ecdUL, 0x013216baUL, 0xe64b1c47UL, 0xf5e98430UL, 0xc10e2ca9UL, 0xd2acb4deUL, 0xa8c17d9bUL, 0xbb63e5ecUL, 0x8f844d75UL, 0x9c26d502UL, 0x449a2e7eUL, 0x5738b609UL, 0x63df1e90UL, 0x707d86e7UL, 0x0a104fa2UL, 0x19b2d7d5UL, 0x2d557f4cUL, 0x3ef7e73bUL, 0xd98eedc6UL, 0xca2c75b1UL, 0xfecbdd28UL, 0xed69455fUL, 0x97048c1aUL, 0x84a6146dUL, 0xb041bcf4UL, 0xa3e32483UL, // Table 2 0x00000000UL, 0xa541927eUL, 0x4f6f520dUL, 0xea2ec073UL, 0x9edea41aUL, 0x3b9f3664UL, 0xd1b1f617UL, 0x74f06469UL, 0x38513ec5UL, 0x9d10acbbUL, 0x773e6cc8UL, 0xd27ffeb6UL, 0xa68f9adfUL, 0x03ce08a1UL, 0xe9e0c8d2UL, 0x4ca15aacUL, 0x70a27d8aUL, 0xd5e3eff4UL, 0x3fcd2f87UL, 0x9a8cbdf9UL, 0xee7cd990UL, 0x4b3d4beeUL, 0xa1138b9dUL, 0x045219e3UL, 0x48f3434fUL, 0xedb2d131UL, 0x079c1142UL, 0xa2dd833cUL, 0xd62de755UL, 0x736c752bUL, 0x9942b558UL, 0x3c032726UL, 0xe144fb14UL, 0x4405696aUL, 0xae2ba919UL, 0x0b6a3b67UL, 0x7f9a5f0eUL, 0xdadbcd70UL, 0x30f50d03UL, 0x95b49f7dUL, 0xd915c5d1UL, 0x7c5457afUL, 0x967a97dcUL, 0x333b05a2UL, 0x47cb61cbUL, 0xe28af3b5UL, 0x08a433c6UL, 0xade5a1b8UL, 0x91e6869eUL, 0x34a714e0UL, 0xde89d493UL, 0x7bc846edUL, 0x0f382284UL, 0xaa79b0faUL, 0x40577089UL, 0xe516e2f7UL, 0xa9b7b85bUL, 0x0cf62a25UL, 0xe6d8ea56UL, 0x43997828UL, 0x37691c41UL, 0x92288e3fUL, 0x78064e4cUL, 0xdd47dc32UL, 0xc76580d9UL, 0x622412a7UL, 0x880ad2d4UL, 0x2d4b40aaUL, 0x59bb24c3UL, 0xfcfab6bdUL, 0x16d476ceUL, 0xb395e4b0UL, 0xff34be1cUL, 0x5a752c62UL, 0xb05bec11UL, 0x151a7e6fUL, 0x61ea1a06UL, 0xc4ab8878UL, 0x2e85480bUL, 0x8bc4da75UL, 0xb7c7fd53UL, 0x12866f2dUL, 0xf8a8af5eUL, 0x5de93d20UL, 0x29195949UL, 0x8c58cb37UL, 0x66760b44UL, 0xc337993aUL, 0x8f96c396UL, 0x2ad751e8UL, 0xc0f9919bUL, 0x65b803e5UL, 0x1148678cUL, 0xb409f5f2UL, 0x5e273581UL, 0xfb66a7ffUL, 0x26217bcdUL, 0x8360e9b3UL, 0x694e29c0UL, 0xcc0fbbbeUL, 0xb8ffdfd7UL, 0x1dbe4da9UL, 0xf7908ddaUL, 0x52d11fa4UL, 0x1e704508UL, 0xbb31d776UL, 0x511f1705UL, 0xf45e857bUL, 0x80aee112UL, 0x25ef736cUL, 0xcfc1b31fUL, 0x6a802161UL, 0x56830647UL, 0xf3c29439UL, 0x19ec544aUL, 0xbcadc634UL, 0xc85da25dUL, 0x6d1c3023UL, 0x8732f050UL, 0x2273622eUL, 0x6ed23882UL, 0xcb93aafcUL, 0x21bd6a8fUL, 0x84fcf8f1UL, 0xf00c9c98UL, 0x554d0ee6UL, 0xbf63ce95UL, 0x1a225cebUL, 0x8b277743UL, 0x2e66e53dUL, 0xc448254eUL, 0x6109b730UL, 0x15f9d359UL, 0xb0b84127UL, 0x5a968154UL, 0xffd7132aUL, 0xb3764986UL, 0x1637dbf8UL, 0xfc191b8bUL, 0x595889f5UL, 0x2da8ed9cUL, 0x88e97fe2UL, 0x62c7bf91UL, 0xc7862defUL, 0xfb850ac9UL, 0x5ec498b7UL, 0xb4ea58c4UL, 0x11abcabaUL, 0x655baed3UL, 0xc01a3cadUL, 0x2a34fcdeUL, 0x8f756ea0UL, 0xc3d4340cUL, 0x6695a672UL, 0x8cbb6601UL, 0x29faf47fUL, 0x5d0a9016UL, 0xf84b0268UL, 0x1265c21bUL, 0xb7245065UL, 0x6a638c57UL, 0xcf221e29UL, 0x250cde5aUL, 0x804d4c24UL, 0xf4bd284dUL, 0x51fcba33UL, 0xbbd27a40UL, 0x1e93e83eUL, 0x5232b292UL, 0xf77320ecUL, 0x1d5de09fUL, 0xb81c72e1UL, 0xccec1688UL, 0x69ad84f6UL, 0x83834485UL, 0x26c2d6fbUL, 0x1ac1f1ddUL, 0xbf8063a3UL, 0x55aea3d0UL, 0xf0ef31aeUL, 0x841f55c7UL, 0x215ec7b9UL, 0xcb7007caUL, 0x6e3195b4UL, 0x2290cf18UL, 0x87d15d66UL, 0x6dff9d15UL, 0xc8be0f6bUL, 0xbc4e6b02UL, 0x190ff97cUL, 0xf321390fUL, 0x5660ab71UL, 0x4c42f79aUL, 0xe90365e4UL, 0x032da597UL, 0xa66c37e9UL, 0xd29c5380UL, 0x77ddc1feUL, 0x9df3018dUL, 0x38b293f3UL, 0x7413c95fUL, 0xd1525b21UL, 0x3b7c9b52UL, 0x9e3d092cUL, 0xeacd6d45UL, 0x4f8cff3bUL, 0xa5a23f48UL, 0x00e3ad36UL, 0x3ce08a10UL, 0x99a1186eUL, 0x738fd81dUL, 0xd6ce4a63UL, 0xa23e2e0aUL, 0x077fbc74UL, 0xed517c07UL, 0x4810ee79UL, 0x04b1b4d5UL, 0xa1f026abUL, 0x4bdee6d8UL, 0xee9f74a6UL, 0x9a6f10cfUL, 0x3f2e82b1UL, 0xd50042c2UL, 0x7041d0bcUL, 0xad060c8eUL, 0x08479ef0UL, 0xe2695e83UL, 0x4728ccfdUL, 0x33d8a894UL, 0x96993aeaUL, 0x7cb7fa99UL, 0xd9f668e7UL, 0x9557324bUL, 0x3016a035UL, 0xda386046UL, 0x7f79f238UL, 0x0b899651UL, 0xaec8042fUL, 0x44e6c45cUL, 0xe1a75622UL, 0xdda47104UL, 0x78e5e37aUL, 0x92cb2309UL, 0x378ab177UL, 0x437ad51eUL, 0xe63b4760UL, 0x0c158713UL, 0xa954156dUL, 0xe5f54fc1UL, 0x40b4ddbfUL, 0xaa9a1dccUL, 0x0fdb8fb2UL, 0x7b2bebdbUL, 0xde6a79a5UL, 0x3444b9d6UL, 0x91052ba8UL, // Table 3 0x00000000UL, 0xdd45aab8UL, 0xbf672381UL, 0x62228939UL, 0x7b2231f3UL, 0xa6679b4bUL, 0xc4451272UL, 0x1900b8caUL, 0xf64463e6UL, 0x2b01c95eUL, 0x49234067UL, 0x9466eadfUL, 0x8d665215UL, 0x5023f8adUL, 0x32017194UL, 0xef44db2cUL, 0xe964b13dUL, 0x34211b85UL, 0x560392bcUL, 0x8b463804UL, 0x924680ceUL, 0x4f032a76UL, 0x2d21a34fUL, 0xf06409f7UL, 0x1f20d2dbUL, 0xc2657863UL, 0xa047f15aUL, 0x7d025be2UL, 0x6402e328UL, 0xb9474990UL, 0xdb65c0a9UL, 0x06206a11UL, 0xd725148bUL, 0x0a60be33UL, 0x6842370aUL, 0xb5079db2UL, 0xac072578UL, 0x71428fc0UL, 0x136006f9UL, 0xce25ac41UL, 0x2161776dUL, 0xfc24ddd5UL, 0x9e0654ecUL, 0x4343fe54UL, 0x5a43469eUL, 0x8706ec26UL, 0xe524651fUL, 0x3861cfa7UL, 0x3e41a5b6UL, 0xe3040f0eUL, 0x81268637UL, 0x5c632c8fUL, 0x45639445UL, 0x98263efdUL, 0xfa04b7c4UL, 0x27411d7cUL, 0xc805c650UL, 0x15406ce8UL, 0x7762e5d1UL, 0xaa274f69UL, 0xb327f7a3UL, 0x6e625d1bUL, 0x0c40d422UL, 0xd1057e9aUL, 0xaba65fe7UL, 0x76e3f55fUL, 0x14c17c66UL, 0xc984d6deUL, 0xd0846e14UL, 0x0dc1c4acUL, 0x6fe34d95UL, 0xb2a6e72dUL, 0x5de23c01UL, 0x80a796b9UL, 0xe2851f80UL, 0x3fc0b538UL, 0x26c00df2UL, 0xfb85a74aUL, 0x99a72e73UL, 0x44e284cbUL, 0x42c2eedaUL, 0x9f874462UL, 0xfda5cd5bUL, 0x20e067e3UL, 0x39e0df29UL, 0xe4a57591UL, 0x8687fca8UL, 0x5bc25610UL, 0xb4868d3cUL, 0x69c32784UL, 0x0be1aebdUL, 0xd6a40405UL, 0xcfa4bccfUL, 0x12e11677UL, 0x70c39f4eUL, 0xad8635f6UL, 0x7c834b6cUL, 0xa1c6e1d4UL, 0xc3e468edUL, 0x1ea1c255UL, 0x07a17a9fUL, 0xdae4d027UL, 0xb8c6591eUL, 0x6583f3a6UL, 0x8ac7288aUL, 0x57828232UL, 0x35a00b0bUL, 0xe8e5a1b3UL, 0xf1e51979UL, 0x2ca0b3c1UL, 0x4e823af8UL, 0x93c79040UL, 0x95e7fa51UL, 0x48a250e9UL, 0x2a80d9d0UL, 0xf7c57368UL, 0xeec5cba2UL, 0x3380611aUL, 0x51a2e823UL, 0x8ce7429bUL, 0x63a399b7UL, 0xbee6330fUL, 0xdcc4ba36UL, 0x0181108eUL, 0x1881a844UL, 0xc5c402fcUL, 0xa7e68bc5UL, 0x7aa3217dUL, 0x52a0c93fUL, 0x8fe56387UL, 0xedc7eabeUL, 0x30824006UL, 0x2982f8ccUL, 0xf4c75274UL, 0x96e5db4dUL, 0x4ba071f5UL, 0xa4e4aad9UL, 0x79a10061UL, 0x1b838958UL, 0xc6c623e0UL, 0xdfc69b2aUL, 0x02833192UL, 0x60a1b8abUL, 0xbde41213UL, 0xbbc47802UL, 0x6681d2baUL, 0x04a35b83UL, 0xd9e6f13bUL, 0xc0e649f1UL, 0x1da3e349UL, 0x7f816a70UL, 0xa2c4c0c8UL, 0x4d801be4UL, 0x90c5b15cUL, 0xf2e73865UL, 0x2fa292ddUL, 0x36a22a17UL, 0xebe780afUL, 0x89c50996UL, 0x5480a32eUL, 0x8585ddb4UL, 0x58c0770cUL, 0x3ae2fe35UL, 0xe7a7548dUL, 0xfea7ec47UL, 0x23e246ffUL, 0x41c0cfc6UL, 0x9c85657eUL, 0x73c1be52UL, 0xae8414eaUL, 0xcca69dd3UL, 0x11e3376bUL, 0x08e38fa1UL, 0xd5a62519UL, 0xb784ac20UL, 0x6ac10698UL, 0x6ce16c89UL, 0xb1a4c631UL, 0xd3864f08UL, 0x0ec3e5b0UL, 0x17c35d7aUL, 0xca86f7c2UL, 0xa8a47efbUL, 0x75e1d443UL, 0x9aa50f6fUL, 0x47e0a5d7UL, 0x25c22ceeUL, 0xf8878656UL, 0xe1873e9cUL, 0x3cc29424UL, 0x5ee01d1dUL, 0x83a5b7a5UL, 0xf90696d8UL, 0x24433c60UL, 0x4661b559UL, 0x9b241fe1UL, 0x8224a72bUL, 0x5f610d93UL, 0x3d4384aaUL, 0xe0062e12UL, 0x0f42f53eUL, 0xd2075f86UL, 0xb025d6bfUL, 0x6d607c07UL, 0x7460c4cdUL, 0xa9256e75UL, 0xcb07e74cUL, 0x16424df4UL, 0x106227e5UL, 0xcd278d5dUL, 0xaf050464UL, 0x7240aedcUL, 0x6b401616UL, 0xb605bcaeUL, 0xd4273597UL, 0x09629f2fUL, 0xe6264403UL, 0x3b63eebbUL, 0x59416782UL, 0x8404cd3aUL, 0x9d0475f0UL, 0x4041df48UL, 0x22635671UL, 0xff26fcc9UL, 0x2e238253UL, 0xf36628ebUL, 0x9144a1d2UL, 0x4c010b6aUL, 0x5501b3a0UL, 0x88441918UL, 0xea669021UL, 0x37233a99UL, 0xd867e1b5UL, 0x05224b0dUL, 0x6700c234UL, 0xba45688cUL, 0xa345d046UL, 0x7e007afeUL, 0x1c22f3c7UL, 0xc167597fUL, 0xc747336eUL, 0x1a0299d6UL, 0x782010efUL, 0xa565ba57UL, 0xbc65029dUL, 0x6120a825UL, 0x0302211cUL, 0xde478ba4UL, 0x31035088UL, 0xec46fa30UL, 0x8e647309UL, 0x5321d9b1UL, 0x4a21617bUL, 0x9764cbc3UL, 0xf54642faUL, 0x2803e842UL, // Constants for Neon CRC32C implementation, 128-bit operation // k3 = 0x790606ff = x^160 mod poly - bit reversed // k4 = 0x18b8ea18 = x^128 mod poly - bit reversed // poly = x^32 + x^28 + x^27 + x^26 + x^25 + x^23 + x^22 + x^20 + x^19 + x^18 + x^14 + x^13 + x^11 + x^10 + x^9 + x^8 + x^6 + x^0 + 0 0x790606ff, 0x18b8ea18, // k4:k3 0x0679ff06, 0xb81818ea, // byte swap 0x06ff7906, 0xea1818b8, // word swap 0xff060679, 0x18eab818, // byte swap of word swap }; /** * AES_TE[] table for AES encryption */ juint StubRoutines::aarch32::_aes_te_table[] __attribute__ ((aligned(2048))) = { //T 0xc66363a5UL, 0xf87c7c84UL, 0xee777799UL, 0xf67b7b8dUL, 0xfff2f20dUL, 0xd66b6bbdUL, 0xde6f6fb1UL, 0x91c5c554UL, 0x60303050UL, 0x02010103UL, 0xce6767a9UL, 0x562b2b7dUL, 0xe7fefe19UL, 0xb5d7d762UL, 0x4dababe6UL, 0xec76769aUL, 0x8fcaca45UL, 0x1f82829dUL, 0x89c9c940UL, 0xfa7d7d87UL, 0xeffafa15UL, 0xb25959ebUL, 0x8e4747c9UL, 0xfbf0f00bUL, 0x41adadecUL, 0xb3d4d467UL, 0x5fa2a2fdUL, 0x45afafeaUL, 0x239c9cbfUL, 0x53a4a4f7UL, 0xe4727296UL, 0x9bc0c05bUL, 0x75b7b7c2UL, 0xe1fdfd1cUL, 0x3d9393aeUL, 0x4c26266aUL, 0x6c36365aUL, 0x7e3f3f41UL, 0xf5f7f702UL, 0x83cccc4fUL, 0x6834345cUL, 0x51a5a5f4UL, 0xd1e5e534UL, 0xf9f1f108UL, 0xe2717193UL, 0xabd8d873UL, 0x62313153UL, 0x2a15153fUL, 0x0804040cUL, 0x95c7c752UL, 0x46232365UL, 0x9dc3c35eUL, 0x30181828UL, 0x379696a1UL, 0x0a05050fUL, 0x2f9a9ab5UL, 0x0e070709UL, 0x24121236UL, 0x1b80809bUL, 0xdfe2e23dUL, 0xcdebeb26UL, 0x4e272769UL, 0x7fb2b2cdUL, 0xea75759fUL, 0x1209091bUL, 0x1d83839eUL, 0x582c2c74UL, 0x341a1a2eUL, 0x361b1b2dUL, 0xdc6e6eb2UL, 0xb45a5aeeUL, 0x5ba0a0fbUL, 0xa45252f6UL, 0x763b3b4dUL, 0xb7d6d661UL, 0x7db3b3ceUL, 0x5229297bUL, 0xdde3e33eUL, 0x5e2f2f71UL, 0x13848497UL, 0xa65353f5UL, 0xb9d1d168UL, 0x00000000UL, 0xc1eded2cUL, 0x40202060UL, 0xe3fcfc1fUL, 0x79b1b1c8UL, 0xb65b5bedUL, 0xd46a6abeUL, 0x8dcbcb46UL, 0x67bebed9UL, 0x7239394bUL, 0x944a4adeUL, 0x984c4cd4UL, 0xb05858e8UL, 0x85cfcf4aUL, 0xbbd0d06bUL, 0xc5efef2aUL, 0x4faaaae5UL, 0xedfbfb16UL, 0x864343c5UL, 0x9a4d4dd7UL, 0x66333355UL, 0x11858594UL, 0x8a4545cfUL, 0xe9f9f910UL, 0x04020206UL, 0xfe7f7f81UL, 0xa05050f0UL, 0x783c3c44UL, 0x259f9fbaUL, 0x4ba8a8e3UL, 0xa25151f3UL, 0x5da3a3feUL, 0x804040c0UL, 0x058f8f8aUL, 0x3f9292adUL, 0x219d9dbcUL, 0x70383848UL, 0xf1f5f504UL, 0x63bcbcdfUL, 0x77b6b6c1UL, 0xafdada75UL, 0x42212163UL, 0x20101030UL, 0xe5ffff1aUL, 0xfdf3f30eUL, 0xbfd2d26dUL, 0x81cdcd4cUL, 0x180c0c14UL, 0x26131335UL, 0xc3ecec2fUL, 0xbe5f5fe1UL, 0x359797a2UL, 0x884444ccUL, 0x2e171739UL, 0x93c4c457UL, 0x55a7a7f2UL, 0xfc7e7e82UL, 0x7a3d3d47UL, 0xc86464acUL, 0xba5d5de7UL, 0x3219192bUL, 0xe6737395UL, 0xc06060a0UL, 0x19818198UL, 0x9e4f4fd1UL, 0xa3dcdc7fUL, 0x44222266UL, 0x542a2a7eUL, 0x3b9090abUL, 0x0b888883UL, 0x8c4646caUL, 0xc7eeee29UL, 0x6bb8b8d3UL, 0x2814143cUL, 0xa7dede79UL, 0xbc5e5ee2UL, 0x160b0b1dUL, 0xaddbdb76UL, 0xdbe0e03bUL, 0x64323256UL, 0x743a3a4eUL, 0x140a0a1eUL, 0x924949dbUL, 0x0c06060aUL, 0x4824246cUL, 0xb85c5ce4UL, 0x9fc2c25dUL, 0xbdd3d36eUL, 0x43acacefUL, 0xc46262a6UL, 0x399191a8UL, 0x319595a4UL, 0xd3e4e437UL, 0xf279798bUL, 0xd5e7e732UL, 0x8bc8c843UL, 0x6e373759UL, 0xda6d6db7UL, 0x018d8d8cUL, 0xb1d5d564UL, 0x9c4e4ed2UL, 0x49a9a9e0UL, 0xd86c6cb4UL, 0xac5656faUL, 0xf3f4f407UL, 0xcfeaea25UL, 0xca6565afUL, 0xf47a7a8eUL, 0x47aeaee9UL, 0x10080818UL, 0x6fbabad5UL, 0xf0787888UL, 0x4a25256fUL, 0x5c2e2e72UL, 0x381c1c24UL, 0x57a6a6f1UL, 0x73b4b4c7UL, 0x97c6c651UL, 0xcbe8e823UL, 0xa1dddd7cUL, 0xe874749cUL, 0x3e1f1f21UL, 0x964b4bddUL, 0x61bdbddcUL, 0x0d8b8b86UL, 0x0f8a8a85UL, 0xe0707090UL, 0x7c3e3e42UL, 0x71b5b5c4UL, 0xcc6666aaUL, 0x904848d8UL, 0x06030305UL, 0xf7f6f601UL, 0x1c0e0e12UL, 0xc26161a3UL, 0x6a35355fUL, 0xae5757f9UL, 0x69b9b9d0UL, 0x17868691UL, 0x99c1c158UL, 0x3a1d1d27UL, 0x279e9eb9UL, 0xd9e1e138UL, 0xebf8f813UL, 0x2b9898b3UL, 0x22111133UL, 0xd26969bbUL, 0xa9d9d970UL, 0x078e8e89UL, 0x339494a7UL, 0x2d9b9bb6UL, 0x3c1e1e22UL, 0x15878792UL, 0xc9e9e920UL, 0x87cece49UL, 0xaa5555ffUL, 0x50282878UL, 0xa5dfdf7aUL, 0x038c8c8fUL, 0x59a1a1f8UL, 0x09898980UL, 0x1a0d0d17UL, 0x65bfbfdaUL, 0xd7e6e631UL, 0x844242c6UL, 0xd06868b8UL, 0x824141c3UL, 0x299999b0UL, 0x5a2d2d77UL, 0x1e0f0f11UL, 0x7bb0b0cbUL, 0xa85454fcUL, 0x6dbbbbd6UL, 0x2c16163aUL, //S 0x63UL, 0x7cUL, 0x77UL, 0x7bUL, 0xf2UL, 0x6bUL, 0x6fUL, 0xc5UL, 0x30UL, 0x01UL, 0x67UL, 0x2bUL, 0xfeUL, 0xd7UL, 0xabUL, 0x76UL, 0xcaUL, 0x82UL, 0xc9UL, 0x7dUL, 0xfaUL, 0x59UL, 0x47UL, 0xf0UL, 0xadUL, 0xd4UL, 0xa2UL, 0xafUL, 0x9cUL, 0xa4UL, 0x72UL, 0xc0UL, 0xb7UL, 0xfdUL, 0x93UL, 0x26UL, 0x36UL, 0x3fUL, 0xf7UL, 0xccUL, 0x34UL, 0xa5UL, 0xe5UL, 0xf1UL, 0x71UL, 0xd8UL, 0x31UL, 0x15UL, 0x04UL, 0xc7UL, 0x23UL, 0xc3UL, 0x18UL, 0x96UL, 0x05UL, 0x9aUL, 0x07UL, 0x12UL, 0x80UL, 0xe2UL, 0xebUL, 0x27UL, 0xb2UL, 0x75UL, 0x09UL, 0x83UL, 0x2cUL, 0x1aUL, 0x1bUL, 0x6eUL, 0x5aUL, 0xa0UL, 0x52UL, 0x3bUL, 0xd6UL, 0xb3UL, 0x29UL, 0xe3UL, 0x2fUL, 0x84UL, 0x53UL, 0xd1UL, 0x00UL, 0xedUL, 0x20UL, 0xfcUL, 0xb1UL, 0x5bUL, 0x6aUL, 0xcbUL, 0xbeUL, 0x39UL, 0x4aUL, 0x4cUL, 0x58UL, 0xcfUL, 0xd0UL, 0xefUL, 0xaaUL, 0xfbUL, 0x43UL, 0x4dUL, 0x33UL, 0x85UL, 0x45UL, 0xf9UL, 0x02UL, 0x7fUL, 0x50UL, 0x3cUL, 0x9fUL, 0xa8UL, 0x51UL, 0xa3UL, 0x40UL, 0x8fUL, 0x92UL, 0x9dUL, 0x38UL, 0xf5UL, 0xbcUL, 0xb6UL, 0xdaUL, 0x21UL, 0x10UL, 0xffUL, 0xf3UL, 0xd2UL, 0xcdUL, 0x0cUL, 0x13UL, 0xecUL, 0x5fUL, 0x97UL, 0x44UL, 0x17UL, 0xc4UL, 0xa7UL, 0x7eUL, 0x3dUL, 0x64UL, 0x5dUL, 0x19UL, 0x73UL, 0x60UL, 0x81UL, 0x4fUL, 0xdcUL, 0x22UL, 0x2aUL, 0x90UL, 0x88UL, 0x46UL, 0xeeUL, 0xb8UL, 0x14UL, 0xdeUL, 0x5eUL, 0x0bUL, 0xdbUL, 0xe0UL, 0x32UL, 0x3aUL, 0x0aUL, 0x49UL, 0x06UL, 0x24UL, 0x5cUL, 0xc2UL, 0xd3UL, 0xacUL, 0x62UL, 0x91UL, 0x95UL, 0xe4UL, 0x79UL, 0xe7UL, 0xc8UL, 0x37UL, 0x6dUL, 0x8dUL, 0xd5UL, 0x4eUL, 0xa9UL, 0x6cUL, 0x56UL, 0xf4UL, 0xeaUL, 0x65UL, 0x7aUL, 0xaeUL, 0x08UL, 0xbaUL, 0x78UL, 0x25UL, 0x2eUL, 0x1cUL, 0xa6UL, 0xb4UL, 0xc6UL, 0xe8UL, 0xddUL, 0x74UL, 0x1fUL, 0x4bUL, 0xbdUL, 0x8bUL, 0x8aUL, 0x70UL, 0x3eUL, 0xb5UL, 0x66UL, 0x48UL, 0x03UL, 0xf6UL, 0x0eUL, 0x61UL, 0x35UL, 0x57UL, 0xb9UL, 0x86UL, 0xc1UL, 0x1dUL, 0x9eUL, 0xe1UL, 0xf8UL, 0x98UL, 0x11UL, 0x69UL, 0xd9UL, 0x8eUL, 0x94UL, 0x9bUL, 0x1eUL, 0x87UL, 0xe9UL, 0xceUL, 0x55UL, 0x28UL, 0xdfUL, 0x8cUL, 0xa1UL, 0x89UL, 0x0dUL, 0xbfUL, 0xe6UL, 0x42UL, 0x68UL, 0x41UL, 0x99UL, 0x2dUL, 0x0fUL, 0xb0UL, 0x54UL, 0xbbUL, 0x16UL, //rcon 0x01000000UL, 0x02000000UL, 0x04000000UL, 0x08000000UL, 0x10000000UL, 0x20000000UL, 0x40000000UL, 0x80000000UL, 0x1B000000UL, 0x36000000UL, 0UL, 0UL, 0UL, 0UL, 0UL, 0UL }; /** * AES_TD[] table for AES decryption */ juint StubRoutines::aarch32::_aes_td_table[] __attribute__ ((aligned(2048))) = { //T 0x51f4a750UL, 0x7e416553UL, 0x1a17a4c3UL, 0x3a275e96UL, 0x3bab6bcbUL, 0x1f9d45f1UL, 0xacfa58abUL, 0x4be30393UL, 0x2030fa55UL, 0xad766df6UL, 0x88cc7691UL, 0xf5024c25UL, 0x4fe5d7fcUL, 0xc52acbd7UL, 0x26354480UL, 0xb562a38fUL, 0xdeb15a49UL, 0x25ba1b67UL, 0x45ea0e98UL, 0x5dfec0e1UL, 0xc32f7502UL, 0x814cf012UL, 0x8d4697a3UL, 0x6bd3f9c6UL, 0x038f5fe7UL, 0x15929c95UL, 0xbf6d7aebUL, 0x955259daUL, 0xd4be832dUL, 0x587421d3UL, 0x49e06929UL, 0x8ec9c844UL, 0x75c2896aUL, 0xf48e7978UL, 0x99583e6bUL, 0x27b971ddUL, 0xbee14fb6UL, 0xf088ad17UL, 0xc920ac66UL, 0x7dce3ab4UL, 0x63df4a18UL, 0xe51a3182UL, 0x97513360UL, 0x62537f45UL, 0xb16477e0UL, 0xbb6bae84UL, 0xfe81a01cUL, 0xf9082b94UL, 0x70486858UL, 0x8f45fd19UL, 0x94de6c87UL, 0x527bf8b7UL, 0xab73d323UL, 0x724b02e2UL, 0xe31f8f57UL, 0x6655ab2aUL, 0xb2eb2807UL, 0x2fb5c203UL, 0x86c57b9aUL, 0xd33708a5UL, 0x302887f2UL, 0x23bfa5b2UL, 0x02036abaUL, 0xed16825cUL, 0x8acf1c2bUL, 0xa779b492UL, 0xf307f2f0UL, 0x4e69e2a1UL, 0x65daf4cdUL, 0x0605bed5UL, 0xd134621fUL, 0xc4a6fe8aUL, 0x342e539dUL, 0xa2f355a0UL, 0x058ae132UL, 0xa4f6eb75UL, 0x0b83ec39UL, 0x4060efaaUL, 0x5e719f06UL, 0xbd6e1051UL, 0x3e218af9UL, 0x96dd063dUL, 0xdd3e05aeUL, 0x4de6bd46UL, 0x91548db5UL, 0x71c45d05UL, 0x0406d46fUL, 0x605015ffUL, 0x1998fb24UL, 0xd6bde997UL, 0x894043ccUL, 0x67d99e77UL, 0xb0e842bdUL, 0x07898b88UL, 0xe7195b38UL, 0x79c8eedbUL, 0xa17c0a47UL, 0x7c420fe9UL, 0xf8841ec9UL, 0x00000000UL, 0x09808683UL, 0x322bed48UL, 0x1e1170acUL, 0x6c5a724eUL, 0xfd0efffbUL, 0x0f853856UL, 0x3daed51eUL, 0x362d3927UL, 0x0a0fd964UL, 0x685ca621UL, 0x9b5b54d1UL, 0x24362e3aUL, 0x0c0a67b1UL, 0x9357e70fUL, 0xb4ee96d2UL, 0x1b9b919eUL, 0x80c0c54fUL, 0x61dc20a2UL, 0x5a774b69UL, 0x1c121a16UL, 0xe293ba0aUL, 0xc0a02ae5UL, 0x3c22e043UL, 0x121b171dUL, 0x0e090d0bUL, 0xf28bc7adUL, 0x2db6a8b9UL, 0x141ea9c8UL, 0x57f11985UL, 0xaf75074cUL, 0xee99ddbbUL, 0xa37f60fdUL, 0xf701269fUL, 0x5c72f5bcUL, 0x44663bc5UL, 0x5bfb7e34UL, 0x8b432976UL, 0xcb23c6dcUL, 0xb6edfc68UL, 0xb8e4f163UL, 0xd731dccaUL, 0x42638510UL, 0x13972240UL, 0x84c61120UL, 0x854a247dUL, 0xd2bb3df8UL, 0xaef93211UL, 0xc729a16dUL, 0x1d9e2f4bUL, 0xdcb230f3UL, 0x0d8652ecUL, 0x77c1e3d0UL, 0x2bb3166cUL, 0xa970b999UL, 0x119448faUL, 0x47e96422UL, 0xa8fc8cc4UL, 0xa0f03f1aUL, 0x567d2cd8UL, 0x223390efUL, 0x87494ec7UL, 0xd938d1c1UL, 0x8ccaa2feUL, 0x98d40b36UL, 0xa6f581cfUL, 0xa57ade28UL, 0xdab78e26UL, 0x3fadbfa4UL, 0x2c3a9de4UL, 0x5078920dUL, 0x6a5fcc9bUL, 0x547e4662UL, 0xf68d13c2UL, 0x90d8b8e8UL, 0x2e39f75eUL, 0x82c3aff5UL, 0x9f5d80beUL, 0x69d0937cUL, 0x6fd52da9UL, 0xcf2512b3UL, 0xc8ac993bUL, 0x10187da7UL, 0xe89c636eUL, 0xdb3bbb7bUL, 0xcd267809UL, 0x6e5918f4UL, 0xec9ab701UL, 0x834f9aa8UL, 0xe6956e65UL, 0xaaffe67eUL, 0x21bccf08UL, 0xef15e8e6UL, 0xbae79bd9UL, 0x4a6f36ceUL, 0xea9f09d4UL, 0x29b07cd6UL, 0x31a4b2afUL, 0x2a3f2331UL, 0xc6a59430UL, 0x35a266c0UL, 0x744ebc37UL, 0xfc82caa6UL, 0xe090d0b0UL, 0x33a7d815UL, 0xf104984aUL, 0x41ecdaf7UL, 0x7fcd500eUL, 0x1791f62fUL, 0x764dd68dUL, 0x43efb04dUL, 0xccaa4d54UL, 0xe49604dfUL, 0x9ed1b5e3UL, 0x4c6a881bUL, 0xc12c1fb8UL, 0x4665517fUL, 0x9d5eea04UL, 0x018c355dUL, 0xfa877473UL, 0xfb0b412eUL, 0xb3671d5aUL, 0x92dbd252UL, 0xe9105633UL, 0x6dd64713UL, 0x9ad7618cUL, 0x37a10c7aUL, 0x59f8148eUL, 0xeb133c89UL, 0xcea927eeUL, 0xb761c935UL, 0xe11ce5edUL, 0x7a47b13cUL, 0x9cd2df59UL, 0x55f2733fUL, 0x1814ce79UL, 0x73c737bfUL, 0x53f7cdeaUL, 0x5ffdaa5bUL, 0xdf3d6f14UL, 0x7844db86UL, 0xcaaff381UL, 0xb968c43eUL, 0x3824342cUL, 0xc2a3405fUL, 0x161dc372UL, 0xbce2250cUL, 0x283c498bUL, 0xff0d9541UL, 0x39a80171UL, 0x080cb3deUL, 0xd8b4e49cUL, 0x6456c190UL, 0x7bcb8461UL, 0xd532b670UL, 0x486c5c74UL, 0xd0b85742UL, //S 0x52UL, 0x09UL, 0x6aUL, 0xd5UL, 0x30UL, 0x36UL, 0xa5UL, 0x38UL, 0xbfUL, 0x40UL, 0xa3UL, 0x9eUL, 0x81UL, 0xf3UL, 0xd7UL, 0xfbUL, 0x7cUL, 0xe3UL, 0x39UL, 0x82UL, 0x9bUL, 0x2fUL, 0xffUL, 0x87UL, 0x34UL, 0x8eUL, 0x43UL, 0x44UL, 0xc4UL, 0xdeUL, 0xe9UL, 0xcbUL, 0x54UL, 0x7bUL, 0x94UL, 0x32UL, 0xa6UL, 0xc2UL, 0x23UL, 0x3dUL, 0xeeUL, 0x4cUL, 0x95UL, 0x0bUL, 0x42UL, 0xfaUL, 0xc3UL, 0x4eUL, 0x08UL, 0x2eUL, 0xa1UL, 0x66UL, 0x28UL, 0xd9UL, 0x24UL, 0xb2UL, 0x76UL, 0x5bUL, 0xa2UL, 0x49UL, 0x6dUL, 0x8bUL, 0xd1UL, 0x25UL, 0x72UL, 0xf8UL, 0xf6UL, 0x64UL, 0x86UL, 0x68UL, 0x98UL, 0x16UL, 0xd4UL, 0xa4UL, 0x5cUL, 0xccUL, 0x5dUL, 0x65UL, 0xb6UL, 0x92UL, 0x6cUL, 0x70UL, 0x48UL, 0x50UL, 0xfdUL, 0xedUL, 0xb9UL, 0xdaUL, 0x5eUL, 0x15UL, 0x46UL, 0x57UL, 0xa7UL, 0x8dUL, 0x9dUL, 0x84UL, 0x90UL, 0xd8UL, 0xabUL, 0x00UL, 0x8cUL, 0xbcUL, 0xd3UL, 0x0aUL, 0xf7UL, 0xe4UL, 0x58UL, 0x05UL, 0xb8UL, 0xb3UL, 0x45UL, 0x06UL, 0xd0UL, 0x2cUL, 0x1eUL, 0x8fUL, 0xcaUL, 0x3fUL, 0x0fUL, 0x02UL, 0xc1UL, 0xafUL, 0xbdUL, 0x03UL, 0x01UL, 0x13UL, 0x8aUL, 0x6bUL, 0x3aUL, 0x91UL, 0x11UL, 0x41UL, 0x4fUL, 0x67UL, 0xdcUL, 0xeaUL, 0x97UL, 0xf2UL, 0xcfUL, 0xceUL, 0xf0UL, 0xb4UL, 0xe6UL, 0x73UL, 0x96UL, 0xacUL, 0x74UL, 0x22UL, 0xe7UL, 0xadUL, 0x35UL, 0x85UL, 0xe2UL, 0xf9UL, 0x37UL, 0xe8UL, 0x1cUL, 0x75UL, 0xdfUL, 0x6eUL, 0x47UL, 0xf1UL, 0x1aUL, 0x71UL, 0x1dUL, 0x29UL, 0xc5UL, 0x89UL, 0x6fUL, 0xb7UL, 0x62UL, 0x0eUL, 0xaaUL, 0x18UL, 0xbeUL, 0x1bUL, 0xfcUL, 0x56UL, 0x3eUL, 0x4bUL, 0xc6UL, 0xd2UL, 0x79UL, 0x20UL, 0x9aUL, 0xdbUL, 0xc0UL, 0xfeUL, 0x78UL, 0xcdUL, 0x5aUL, 0xf4UL, 0x1fUL, 0xddUL, 0xa8UL, 0x33UL, 0x88UL, 0x07UL, 0xc7UL, 0x31UL, 0xb1UL, 0x12UL, 0x10UL, 0x59UL, 0x27UL, 0x80UL, 0xecUL, 0x5fUL, 0x60UL, 0x51UL, 0x7fUL, 0xa9UL, 0x19UL, 0xb5UL, 0x4aUL, 0x0dUL, 0x2dUL, 0xe5UL, 0x7aUL, 0x9fUL, 0x93UL, 0xc9UL, 0x9cUL, 0xefUL, 0xa0UL, 0xe0UL, 0x3bUL, 0x4dUL, 0xaeUL, 0x2aUL, 0xf5UL, 0xb0UL, 0xc8UL, 0xebUL, 0xbbUL, 0x3cUL, 0x83UL, 0x53UL, 0x99UL, 0x61UL, 0x17UL, 0x2bUL, 0x04UL, 0x7eUL, 0xbaUL, 0x77UL, 0xd6UL, 0x26UL, 0xe1UL, 0x69UL, 0x14UL, 0x63UL, 0x55UL, 0x21UL, 0x0cUL, 0x7dUL }; /** * SHA256[] table for SHA256 Digest */ juint StubRoutines::aarch32::_sha1_table[] __attribute__ ((aligned(1024))) = { //k 0x5A827999UL, 0x6ED9EBA1UL, 0x8F1BBCDCUL, 0xCA62C1D6UL }; /** * SHA256[] table for SHA256 Digest */ juint StubRoutines::aarch32::_sha256_table[] __attribute__ ((aligned(1024))) = { //k 0x428A2F98UL, 0x71374491UL, 0xB5C0FBCFUL, 0xE9B5DBA5UL, 0x3956C25BUL, 0x59F111F1UL, 0x923F82A4UL, 0xAB1C5ED5UL, 0xD807AA98UL, 0x12835B01UL, 0x243185BEUL, 0x550C7DC3UL, 0x72BE5D74UL, 0x80DEB1FEUL, 0x9BDC06A7UL, 0xC19BF174UL, 0xE49B69C1UL, 0xEFBE4786UL, 0x0FC19DC6UL, 0x240CA1CCUL, 0x2DE92C6FUL, 0x4A7484AAUL, 0x5CB0A9DCUL, 0x76F988DAUL, 0x983E5152UL, 0xA831C66DUL, 0xB00327C8UL, 0xBF597FC7UL, 0xC6E00BF3UL, 0xD5A79147UL, 0x06CA6351UL, 0x14292967UL, 0x27B70A85UL, 0x2E1B2138UL, 0x4D2C6DFCUL, 0x53380D13UL, 0x650A7354UL, 0x766A0ABBUL, 0x81C2C92EUL, 0x92722C85UL, 0xA2BFE8A1UL, 0xA81A664BUL, 0xC24B8B70UL, 0xC76C51A3UL, 0xD192E819UL, 0xD6990624UL, 0xF40E3585UL, 0x106AA070UL, 0x19A4C116UL, 0x1E376C08UL, 0x2748774CUL, 0x34B0BCB5UL, 0x391C0CB3UL, 0x4ED8AA4AUL, 0x5B9CCA4FUL, 0x682E6FF3UL, 0x748F82EEUL, 0x78A5636FUL, 0x84C87814UL, 0x8CC70208UL, 0x90BEFFFAUL, 0xA4506CEBUL, 0xBEF9A3F7UL, 0xC67178F2UL }; /** * SHA512[] table for SHA512 Digest */ julong StubRoutines::aarch32::_sha512_table[] __attribute__ ((aligned(1024))) = { //k 0x428a2f98d728ae22UL, 0x7137449123ef65cdUL, 0xb5c0fbcfec4d3b2fUL, 0xe9b5dba58189dbbcUL, 0x3956c25bf348b538UL, 0x59f111f1b605d019UL, 0x923f82a4af194f9bUL, 0xab1c5ed5da6d8118UL, 0xd807aa98a3030242UL, 0x12835b0145706fbeUL, 0x243185be4ee4b28cUL, 0x550c7dc3d5ffb4e2UL, 0x72be5d74f27b896fUL, 0x80deb1fe3b1696b1UL, 0x9bdc06a725c71235UL, 0xc19bf174cf692694UL, 0xe49b69c19ef14ad2UL, 0xefbe4786384f25e3UL, 0x0fc19dc68b8cd5b5UL, 0x240ca1cc77ac9c65UL, 0x2de92c6f592b0275UL, 0x4a7484aa6ea6e483UL, 0x5cb0a9dcbd41fbd4UL, 0x76f988da831153b5UL, 0x983e5152ee66dfabUL, 0xa831c66d2db43210UL, 0xb00327c898fb213fUL, 0xbf597fc7beef0ee4UL, 0xc6e00bf33da88fc2UL, 0xd5a79147930aa725UL, 0x06ca6351e003826fUL, 0x142929670a0e6e70UL, 0x27b70a8546d22ffcUL, 0x2e1b21385c26c926UL, 0x4d2c6dfc5ac42aedUL, 0x53380d139d95b3dfUL, 0x650a73548baf63deUL, 0x766a0abb3c77b2a8UL, 0x81c2c92e47edaee6UL, 0x92722c851482353bUL, 0xa2bfe8a14cf10364UL, 0xa81a664bbc423001UL, 0xc24b8b70d0f89791UL, 0xc76c51a30654be30UL, 0xd192e819d6ef5218UL, 0xd69906245565a910UL, 0xf40e35855771202aUL, 0x106aa07032bbd1b8UL, 0x19a4c116b8d2d0c8UL, 0x1e376c085141ab53UL, 0x2748774cdf8eeb99UL, 0x34b0bcb5e19b48a8UL, 0x391c0cb3c5c95a63UL, 0x4ed8aa4ae3418acbUL, 0x5b9cca4f7763e373UL, 0x682e6ff3d6b2b8a3UL, 0x748f82ee5defb2fcUL, 0x78a5636f43172f60UL, 0x84c87814a1f0ab72UL, 0x8cc702081a6439ecUL, 0x90befffa23631e28UL, 0xa4506cebde82bde9UL, 0xbef9a3f7b2c67915UL, 0xc67178f2e372532bUL, 0xca273eceea26619cUL, 0xd186b8c721c0c207UL, 0xeada7dd6cde0eb1eUL, 0xf57d4f7fee6ed178UL, 0x06f067aa72176fbaUL, 0x0a637dc5a2c898a6UL, 0x113f9804bef90daeUL, 0x1b710b35131c471bUL, 0x28db77f523047d84UL, 0x32caab7b40c72493UL, 0x3c9ebe0a15c9bebcUL, 0x431d67c49c100d4cUL, 0x4cc5d4becb3e42b6UL, 0x597f299cfc657e2aUL, 0x5fcb6fab3ad6faecUL, 0x6c44198c4a475817UL }; address StubRoutines::_cipherBlockChaining_encryptAESCrypt_special = NULL; address StubRoutines::_cipherBlockChaining_decryptAESCrypt_special = NULL; address StubRoutines::_aes_table_te_addr = NULL; address StubRoutines::_aes_table_td_addr = NULL; address StubRoutines::_sha1_table_addr = NULL; address StubRoutines::_sha256_table_addr = NULL; address StubRoutines::_sha512_table_addr = NULL;