1*ace44584SAleksandar Markovic /* 2*ace44584SAleksandar Markovic * Header file for pattern and random test inputs 3*ace44584SAleksandar Markovic * 4*ace44584SAleksandar Markovic * Copyright (C) 2019 Wave Computing, Inc. 5*ace44584SAleksandar Markovic * Copyright (C) 2019 Aleksandar Markovic <amarkovic@wavecomp.com> 6*ace44584SAleksandar Markovic * 7*ace44584SAleksandar Markovic * This program is free software: you can redistribute it and/or modify 8*ace44584SAleksandar Markovic * it under the terms of the GNU General Public License as published by 9*ace44584SAleksandar Markovic * the Free Software Foundation, either version 2 of the License, or 10*ace44584SAleksandar Markovic * (at your option) any later version. 11*ace44584SAleksandar Markovic * 12*ace44584SAleksandar Markovic * This program is distributed in the hope that it will be useful, 13*ace44584SAleksandar Markovic * but WITHOUT ANY WARRANTY; without even the implied warranty of 14*ace44584SAleksandar Markovic * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15*ace44584SAleksandar Markovic * GNU General Public License for more details. 16*ace44584SAleksandar Markovic * 17*ace44584SAleksandar Markovic * You should have received a copy of the GNU General Public License 18*ace44584SAleksandar Markovic * along with this program. If not, see <https://www.gnu.org/licenses/>. 19*ace44584SAleksandar Markovic * 20*ace44584SAleksandar Markovic */ 21*ace44584SAleksandar Markovic 22*ace44584SAleksandar Markovic #ifndef TEST_INPUTS_64_H 23*ace44584SAleksandar Markovic #define TEST_INPUTS_64_H 24*ace44584SAleksandar Markovic 25*ace44584SAleksandar Markovic #include <stdint.h> 26*ace44584SAleksandar Markovic 27*ace44584SAleksandar Markovic 28*ace44584SAleksandar Markovic #define PATTERN_INPUTS_64_COUNT 64 29*ace44584SAleksandar Markovic #define PATTERN_INPUTS_64_SHORT_COUNT 8 30*ace44584SAleksandar Markovic 31*ace44584SAleksandar Markovic static const uint64_t b64_pattern[PATTERN_INPUTS_64_COUNT] = { 32*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFFFULL, /* 0 */ 33*ace44584SAleksandar Markovic 0x0000000000000000ULL, 34*ace44584SAleksandar Markovic 0xAAAAAAAAAAAAAAAAULL, 35*ace44584SAleksandar Markovic 0x5555555555555555ULL, 36*ace44584SAleksandar Markovic 0xCCCCCCCCCCCCCCCCULL, 37*ace44584SAleksandar Markovic 0x3333333333333333ULL, 38*ace44584SAleksandar Markovic 0xE38E38E38E38E38EULL, 39*ace44584SAleksandar Markovic 0x1C71C71C71C71C71ULL, 40*ace44584SAleksandar Markovic 0xF0F0F0F0F0F0F0F0ULL, /* 8 */ 41*ace44584SAleksandar Markovic 0x0F0F0F0F0F0F0F0FULL, 42*ace44584SAleksandar Markovic 0xF83E0F83E0F83E0FULL, 43*ace44584SAleksandar Markovic 0x07C1F07C1F07C1F0ULL, 44*ace44584SAleksandar Markovic 0xFC0FC0FC0FC0FC0FULL, 45*ace44584SAleksandar Markovic 0x03F03F03F03F03F0ULL, 46*ace44584SAleksandar Markovic 0xFE03F80FE03F80FEULL, 47*ace44584SAleksandar Markovic 0x01FC07F01FC07F01ULL, 48*ace44584SAleksandar Markovic 0xFF00FF00FF00FF00ULL, /* 16 */ 49*ace44584SAleksandar Markovic 0x00FF00FF00FF00FFULL, 50*ace44584SAleksandar Markovic 0xFF803FE00FF803FEULL, 51*ace44584SAleksandar Markovic 0x007FC01FF007FC01ULL, 52*ace44584SAleksandar Markovic 0xFFC00FFC00FFC00FULL, 53*ace44584SAleksandar Markovic 0x003FF003FF003FF0ULL, 54*ace44584SAleksandar Markovic 0xFFE003FF800FFE00ULL, 55*ace44584SAleksandar Markovic 0x001FFC007FF001FFULL, 56*ace44584SAleksandar Markovic 0xFFF000FFF000FFF0ULL, /* 24 */ 57*ace44584SAleksandar Markovic 0x000FFF000FFF000FULL, 58*ace44584SAleksandar Markovic 0xFFF8003FFE000FFFULL, 59*ace44584SAleksandar Markovic 0x0007FFC001FFF000ULL, 60*ace44584SAleksandar Markovic 0xFFFC000FFFC000FFULL, 61*ace44584SAleksandar Markovic 0x0003FFF0003FFF00ULL, 62*ace44584SAleksandar Markovic 0xFFFE0003FFF8000FULL, 63*ace44584SAleksandar Markovic 0x0001FFFC0007FFF0ULL, 64*ace44584SAleksandar Markovic 0xFFFF0000FFFF0000ULL, /* 32 */ 65*ace44584SAleksandar Markovic 0x0000FFFF0000FFFFULL, 66*ace44584SAleksandar Markovic 0xFFFF80003FFFE000ULL, 67*ace44584SAleksandar Markovic 0x00007FFFC0001FFFULL, 68*ace44584SAleksandar Markovic 0xFFFFC0000FFFFC00ULL, 69*ace44584SAleksandar Markovic 0x00003FFFF00003FFULL, 70*ace44584SAleksandar Markovic 0xFFFFE00003FFFF80ULL, 71*ace44584SAleksandar Markovic 0x00001FFFFC00007FULL, 72*ace44584SAleksandar Markovic 0xFFFFF00000FFFFF0ULL, /* 40 */ 73*ace44584SAleksandar Markovic 0x00000FFFFF00000FULL, 74*ace44584SAleksandar Markovic 0xFFFFF800003FFFFEULL, 75*ace44584SAleksandar Markovic 0x000007FFFFC00001ULL, 76*ace44584SAleksandar Markovic 0xFFFFFC00000FFFFFULL, 77*ace44584SAleksandar Markovic 0x000003FFFFF00000ULL, 78*ace44584SAleksandar Markovic 0xFFFFFE000003FFFFULL, 79*ace44584SAleksandar Markovic 0x000001FFFFFC0000ULL, 80*ace44584SAleksandar Markovic 0xFFFFFF000000FFFFULL, /* 48 */ 81*ace44584SAleksandar Markovic 0x000000FFFFFF0000ULL, 82*ace44584SAleksandar Markovic 0xFFFFFF8000003FFFULL, 83*ace44584SAleksandar Markovic 0x0000007FFFFFC000ULL, 84*ace44584SAleksandar Markovic 0xFFFFFFC000000FFFULL, 85*ace44584SAleksandar Markovic 0x0000003FFFFFF000ULL, 86*ace44584SAleksandar Markovic 0xFFFFFFE0000003FFULL, 87*ace44584SAleksandar Markovic 0x0000001FFFFFFC00ULL, 88*ace44584SAleksandar Markovic 0xFFFFFFF0000000FFULL, /* 56 */ 89*ace44584SAleksandar Markovic 0x0000000FFFFFFF00ULL, 90*ace44584SAleksandar Markovic 0xFFFFFFF80000003FULL, 91*ace44584SAleksandar Markovic 0x00000007FFFFFFC0ULL, 92*ace44584SAleksandar Markovic 0xFFFFFFFC0000000FULL, 93*ace44584SAleksandar Markovic 0x00000003FFFFFFF0ULL, 94*ace44584SAleksandar Markovic 0xFFFFFFFE00000003ULL, 95*ace44584SAleksandar Markovic 0x00000001FFFFFFFCULL, 96*ace44584SAleksandar Markovic }; 97*ace44584SAleksandar Markovic 98*ace44584SAleksandar Markovic static const uint64_t b64_pattern_se[PATTERN_INPUTS_64_COUNT] = { 99*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFFFULL, /* 0 */ 100*ace44584SAleksandar Markovic 0x0000000000000000ULL, 101*ace44584SAleksandar Markovic 0xFFFFFFFFAAAAAAAAULL, 102*ace44584SAleksandar Markovic 0x0000000055555555ULL, 103*ace44584SAleksandar Markovic 0xFFFFFFFFCCCCCCCCULL, 104*ace44584SAleksandar Markovic 0x0000000033333333ULL, 105*ace44584SAleksandar Markovic 0xFFFFFFFFE38E38E3ULL, 106*ace44584SAleksandar Markovic 0x000000001C71C71CULL, 107*ace44584SAleksandar Markovic 0xFFFFFFFFF0F0F0F0ULL, /* 8 */ 108*ace44584SAleksandar Markovic 0x000000000F0F0F0FULL, 109*ace44584SAleksandar Markovic 0xFFFFFFFFF83E0F83ULL, 110*ace44584SAleksandar Markovic 0x0000000007C1F07CULL, 111*ace44584SAleksandar Markovic 0xFFFFFFFFFC0FC0FCULL, 112*ace44584SAleksandar Markovic 0x0000000003F03F03ULL, 113*ace44584SAleksandar Markovic 0xFFFFFFFFFE03F80FULL, 114*ace44584SAleksandar Markovic 0x0000000001FC07F0ULL, 115*ace44584SAleksandar Markovic 0xFFFFFFFFFF00FF00ULL, /* 16 */ 116*ace44584SAleksandar Markovic 0x0000000000FF00FFULL, 117*ace44584SAleksandar Markovic 0xFFFFFFFFFF803FE0ULL, 118*ace44584SAleksandar Markovic 0x00000000007FC01FULL, 119*ace44584SAleksandar Markovic 0xFFFFFFFFFFC00FFCULL, 120*ace44584SAleksandar Markovic 0x00000000003FF003ULL, 121*ace44584SAleksandar Markovic 0xFFFFFFFFFFE003FFULL, 122*ace44584SAleksandar Markovic 0x00000000001FFC00ULL, 123*ace44584SAleksandar Markovic 0xFFFFFFFFFFF000FFULL, /* 24 */ 124*ace44584SAleksandar Markovic 0x00000000000FFF00ULL, 125*ace44584SAleksandar Markovic 0xFFFFFFFFFFF8003FULL, 126*ace44584SAleksandar Markovic 0x000000000007FFC0ULL, 127*ace44584SAleksandar Markovic 0xFFFFFFFFFFFC000FULL, 128*ace44584SAleksandar Markovic 0x000000000003FFF0ULL, 129*ace44584SAleksandar Markovic 0xFFFFFFFFFFFE0003ULL, 130*ace44584SAleksandar Markovic 0x000000000001FFFCULL, 131*ace44584SAleksandar Markovic 0xFFFFFFFFFFFF0000ULL, /* 32 */ 132*ace44584SAleksandar Markovic 0x000000000000FFFFULL, 133*ace44584SAleksandar Markovic 0xFFFFFFFFFFFF8000ULL, 134*ace44584SAleksandar Markovic 0x0000000000007FFFULL, 135*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFC000ULL, 136*ace44584SAleksandar Markovic 0x0000000000003FFFULL, 137*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFE000ULL, 138*ace44584SAleksandar Markovic 0x0000000000001FFFULL, 139*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFF000ULL, /* 40 */ 140*ace44584SAleksandar Markovic 0x0000000000000FFFULL, 141*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFF800ULL, 142*ace44584SAleksandar Markovic 0x00000000000007FFULL, 143*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFC00ULL, 144*ace44584SAleksandar Markovic 0x00000000000003FFULL, 145*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFE00ULL, 146*ace44584SAleksandar Markovic 0x00000000000001FFULL, 147*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFF00ULL, /* 48 */ 148*ace44584SAleksandar Markovic 0x00000000000000FFULL, 149*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFF80ULL, 150*ace44584SAleksandar Markovic 0x000000000000007FULL, 151*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFC0ULL, 152*ace44584SAleksandar Markovic 0x000000000000003FULL, 153*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFE0ULL, 154*ace44584SAleksandar Markovic 0x000000000000001FULL, 155*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFF0ULL, /* 56 */ 156*ace44584SAleksandar Markovic 0x000000000000000FULL, 157*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFF8ULL, 158*ace44584SAleksandar Markovic 0x0000000000000007ULL, 159*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFFCULL, 160*ace44584SAleksandar Markovic 0x0000000000000003ULL, 161*ace44584SAleksandar Markovic 0xFFFFFFFFFFFFFFFEULL, 162*ace44584SAleksandar Markovic 0x0000000000000001ULL, 163*ace44584SAleksandar Markovic }; 164*ace44584SAleksandar Markovic 165*ace44584SAleksandar Markovic 166*ace44584SAleksandar Markovic #define RANDOM_INPUTS_64_COUNT 16 167*ace44584SAleksandar Markovic #define RANDOM_INPUTS_64_SHORT_COUNT 4 168*ace44584SAleksandar Markovic 169*ace44584SAleksandar Markovic static const uint64_t b64_random[RANDOM_INPUTS_64_COUNT] = { 170*ace44584SAleksandar Markovic 0x886AE6CC28625540ULL, /* 0 */ 171*ace44584SAleksandar Markovic 0xFBBE00634D93C708ULL, 172*ace44584SAleksandar Markovic 0xAC5AAEAAB9CF8B80ULL, 173*ace44584SAleksandar Markovic 0x704F164D5E31E24EULL, 174*ace44584SAleksandar Markovic 0xB9926B7C7DAF4258ULL, 175*ace44584SAleksandar Markovic 0xD027BE89FF0A2EF9ULL, 176*ace44584SAleksandar Markovic 0xB83B580665CABC4AULL, 177*ace44584SAleksandar Markovic 0xFC8F23F09AA6B782ULL, 178*ace44584SAleksandar Markovic 0x201E09CD56AEE649ULL, /* 8 */ 179*ace44584SAleksandar Markovic 0xA57CD91365D9E5D7ULL, 180*ace44584SAleksandar Markovic 0xA2E8F6F5C9CBC61BULL, 181*ace44584SAleksandar Markovic 0xA89CF2F131A864AEULL, 182*ace44584SAleksandar Markovic 0xE61438E9A652EA0AULL, 183*ace44584SAleksandar Markovic 0x944A35FD192361A8ULL, 184*ace44584SAleksandar Markovic 0x4630426322BEF79CULL, 185*ace44584SAleksandar Markovic 0x8B5AA7A2F259DEADULL, 186*ace44584SAleksandar Markovic }; 187*ace44584SAleksandar Markovic 188*ace44584SAleksandar Markovic static const uint64_t b64_random_se[RANDOM_INPUTS_64_COUNT] = { 189*ace44584SAleksandar Markovic 0xFFFFFFFF886AE6CCULL, /* 0 */ 190*ace44584SAleksandar Markovic 0xFFFFFFFFFBBE0063ULL, 191*ace44584SAleksandar Markovic 0xFFFFFFFFAC5AAEAAULL, 192*ace44584SAleksandar Markovic 0x00000000704F164DULL, 193*ace44584SAleksandar Markovic 0xFFFFFFFFB9926B7CULL, 194*ace44584SAleksandar Markovic 0xFFFFFFFFD027BE89ULL, 195*ace44584SAleksandar Markovic 0xFFFFFFFFB83B5806ULL, 196*ace44584SAleksandar Markovic 0xFFFFFFFFFC8F23F0ULL, 197*ace44584SAleksandar Markovic 0x00000000201E09CDULL, /* 8 */ 198*ace44584SAleksandar Markovic 0xFFFFFFFFA57CD913ULL, 199*ace44584SAleksandar Markovic 0xFFFFFFFFA2E8F6F5ULL, 200*ace44584SAleksandar Markovic 0xFFFFFFFFA89CF2F1ULL, 201*ace44584SAleksandar Markovic 0xFFFFFFFFE61438E9ULL, 202*ace44584SAleksandar Markovic 0xFFFFFFFF944A35FDULL, 203*ace44584SAleksandar Markovic 0x0000000046304263ULL, 204*ace44584SAleksandar Markovic 0xFFFFFFFF8B5AA7A2ULL, 205*ace44584SAleksandar Markovic }; 206*ace44584SAleksandar Markovic 207*ace44584SAleksandar Markovic 208*ace44584SAleksandar Markovic #endif 209