cachepc-qemu

Fork of AMDESE/qemu with changes for cachepc side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-qemu
Log | Files | Refs | Submodules | LICENSE | sfeed.txt

test_inputs_64.h (6489B)


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