LCOV - code coverage report
Current view: top level - lib/table - rte_swx_keycmp.c (source / functions) Hit Total Coverage
Test: Code coverage Lines: 0 69 0.0 %
Date: 2025-03-01 20:23:48 Functions: 0 66 0.0 %
Legend: Lines: hit not hit | Branches: + taken - not taken # not executed Branches: 0 2 0.0 %

           Branch data     Line data    Source code
       1                 :            : /* SPDX-License-Identifier: BSD-3-Clause
       2                 :            :  * Copyright(c) 2022 Intel Corporation
       3                 :            :  */
       4                 :            : #include <rte_common.h>
       5                 :            : 
       6                 :            : #include "rte_swx_keycmp.h"
       7                 :            : 
       8                 :            : static uint32_t
       9                 :          0 : keycmp_generic(void *key1, void *key2, uint32_t key_size)
      10                 :            : {
      11                 :          0 :         return memcmp(key1, key2, key_size) ? 0 : 1;
      12                 :            : }
      13                 :            : 
      14                 :            : #define KEYCMP(N)                                                 \
      15                 :            : static uint32_t                                                   \
      16                 :            : keycmp##N(void *key1, void *key2, uint32_t key_size __rte_unused) \
      17                 :            : {                                                                 \
      18                 :            :         return memcmp(key1, key2, N) ? 0 : 1;                     \
      19                 :            : }
      20                 :            : 
      21                 :          0 : KEYCMP(1)
      22                 :          0 : KEYCMP(2)
      23                 :          0 : KEYCMP(3)
      24                 :          0 : KEYCMP(4)
      25                 :          0 : KEYCMP(5)
      26                 :          0 : KEYCMP(6)
      27                 :          0 : KEYCMP(7)
      28                 :          0 : KEYCMP(8)
      29                 :          0 : KEYCMP(9)
      30                 :            : 
      31                 :          0 : KEYCMP(10)
      32                 :          0 : KEYCMP(11)
      33                 :          0 : KEYCMP(12)
      34                 :          0 : KEYCMP(13)
      35                 :          0 : KEYCMP(14)
      36                 :          0 : KEYCMP(15)
      37                 :          0 : KEYCMP(16)
      38                 :          0 : KEYCMP(17)
      39                 :          0 : KEYCMP(18)
      40                 :          0 : KEYCMP(19)
      41                 :            : 
      42                 :          0 : KEYCMP(20)
      43                 :          0 : KEYCMP(21)
      44                 :          0 : KEYCMP(22)
      45                 :          0 : KEYCMP(23)
      46                 :          0 : KEYCMP(24)
      47                 :          0 : KEYCMP(25)
      48                 :          0 : KEYCMP(26)
      49                 :          0 : KEYCMP(27)
      50                 :          0 : KEYCMP(28)
      51                 :          0 : KEYCMP(29)
      52                 :            : 
      53                 :          0 : KEYCMP(30)
      54                 :          0 : KEYCMP(31)
      55                 :          0 : KEYCMP(32)
      56                 :          0 : KEYCMP(33)
      57                 :          0 : KEYCMP(34)
      58                 :          0 : KEYCMP(35)
      59                 :          0 : KEYCMP(36)
      60                 :          0 : KEYCMP(37)
      61                 :          0 : KEYCMP(38)
      62                 :          0 : KEYCMP(39)
      63                 :            : 
      64                 :          0 : KEYCMP(40)
      65                 :          0 : KEYCMP(41)
      66                 :          0 : KEYCMP(42)
      67                 :          0 : KEYCMP(43)
      68                 :          0 : KEYCMP(44)
      69                 :          0 : KEYCMP(45)
      70                 :          0 : KEYCMP(46)
      71                 :          0 : KEYCMP(47)
      72                 :          0 : KEYCMP(48)
      73                 :          0 : KEYCMP(49)
      74                 :            : 
      75                 :          0 : KEYCMP(50)
      76                 :          0 : KEYCMP(51)
      77                 :          0 : KEYCMP(52)
      78                 :          0 : KEYCMP(53)
      79                 :          0 : KEYCMP(54)
      80                 :          0 : KEYCMP(55)
      81                 :          0 : KEYCMP(56)
      82                 :          0 : KEYCMP(57)
      83                 :          0 : KEYCMP(58)
      84                 :          0 : KEYCMP(59)
      85                 :            : 
      86                 :          0 : KEYCMP(60)
      87                 :          0 : KEYCMP(61)
      88                 :          0 : KEYCMP(62)
      89                 :          0 : KEYCMP(63)
      90                 :          0 : KEYCMP(64)
      91                 :            : 
      92                 :            : static rte_swx_keycmp_func_t keycmp_funcs[] = {
      93                 :            :         keycmp1,
      94                 :            :         keycmp2,
      95                 :            :         keycmp3,
      96                 :            :         keycmp4,
      97                 :            :         keycmp5,
      98                 :            :         keycmp6,
      99                 :            :         keycmp7,
     100                 :            :         keycmp8,
     101                 :            :         keycmp9,
     102                 :            :         keycmp10,
     103                 :            :         keycmp11,
     104                 :            :         keycmp12,
     105                 :            :         keycmp13,
     106                 :            :         keycmp14,
     107                 :            :         keycmp15,
     108                 :            :         keycmp16,
     109                 :            :         keycmp17,
     110                 :            :         keycmp18,
     111                 :            :         keycmp19,
     112                 :            :         keycmp20,
     113                 :            :         keycmp21,
     114                 :            :         keycmp22,
     115                 :            :         keycmp23,
     116                 :            :         keycmp24,
     117                 :            :         keycmp25,
     118                 :            :         keycmp26,
     119                 :            :         keycmp27,
     120                 :            :         keycmp28,
     121                 :            :         keycmp29,
     122                 :            :         keycmp30,
     123                 :            :         keycmp31,
     124                 :            :         keycmp32,
     125                 :            :         keycmp33,
     126                 :            :         keycmp34,
     127                 :            :         keycmp35,
     128                 :            :         keycmp36,
     129                 :            :         keycmp37,
     130                 :            :         keycmp38,
     131                 :            :         keycmp39,
     132                 :            :         keycmp40,
     133                 :            :         keycmp41,
     134                 :            :         keycmp42,
     135                 :            :         keycmp43,
     136                 :            :         keycmp44,
     137                 :            :         keycmp45,
     138                 :            :         keycmp46,
     139                 :            :         keycmp47,
     140                 :            :         keycmp48,
     141                 :            :         keycmp49,
     142                 :            :         keycmp50,
     143                 :            :         keycmp51,
     144                 :            :         keycmp52,
     145                 :            :         keycmp53,
     146                 :            :         keycmp54,
     147                 :            :         keycmp55,
     148                 :            :         keycmp56,
     149                 :            :         keycmp57,
     150                 :            :         keycmp58,
     151                 :            :         keycmp59,
     152                 :            :         keycmp60,
     153                 :            :         keycmp61,
     154                 :            :         keycmp62,
     155                 :            :         keycmp63,
     156                 :            :         keycmp64,
     157                 :            : };
     158                 :            : 
     159                 :            : rte_swx_keycmp_func_t
     160                 :          0 : rte_swx_keycmp_func_get(uint32_t key_size)
     161                 :            : {
     162         [ #  # ]:          0 :         if (key_size && key_size <= 64)
     163                 :          0 :                 return keycmp_funcs[key_size - 1];
     164                 :            : 
     165                 :            :         return keycmp_generic;
     166                 :            : }

Generated by: LCOV version 1.14