Software: Apache. PHP/5.4.45 

uname -a: Linux webm056.cluster010.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue
Sep 17 08:14:20 UTC 2024 x86_64
 

uid=243112(mycochar) gid=100(users) groups=100(users)  

Safe-mode: OFF (not secure)

/home/mycochar/www/image/photo/gcc-12.3.0/gcc/testsuite/gcc.target/powerpc/   drwxr-xr-x
Free 0 B of 0 B (0%)
Your ip: 216.73.216.77 - Server ip: 213.186.33.19
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    

[Enumerate]    [Encoder]    [Tools]    [Proc.]    [FTP Brute]    [Sec.]    [SQL]    [PHP-Code]    [Backdoor Host]    [Back-Connection]    [milw0rm it!]    [PHP-Proxy]    [Self remove]
    


Viewing file:     builtins-8-p9-runnable.c (44.3 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do run } */
/* { dg-require-effective-target p9vector_hw } */
/* { dg-options "-mdejagnu-cpu=power9 -O2" } */

#include <stdint.h>
#include <stdio.h>
#include <altivec.h> // vector

#ifdef DEBUG
#include <stdio.h>
#endif

#ifdef DEBUG2
#include <stdio.h>
#endif


void abort (void);

#ifdef DEBUG2
void print_signed_char (char *name, vector signed char src)
{
  int i;

  for (i = 0; i < 8; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("\n");

  for (i = 8; i < 15; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 15, src[i]);
}

void print_unsigned_char (char *name, vector unsigned char src)
{
  int i;

  for (i = 0; i < 8; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("\n");

  for (i = 8; i < 15; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 15, src[i]);
}

void print_signed_short_int (char *name, vector signed short int src)
{
  int i;

  for (i = 0; i < 7; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 7, src[i]);
}

void print_unsigned_short_int (char *name, vector unsigned short int src)
{
  int i;

  for (i = 0; i < 7; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 7, src[i]);
}

void print_signed_int (char *name, vector signed int src)
{
  int i;

  for (i = 0; i < 3; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 3, src[i]);
}

void print_unsigned_int (char *name, vector unsigned int src)
{
  int i;

  for (i = 0; i < 3; i++)
    printf("%s[%d] = %d, ", name, i, src[i]);

  printf("%s[%d] = %d\n", name, 3, src[i]);
}
#endif

int main() {

  vector signed char char_src1, char_src2;
  vector unsigned char uchar_src1, uchar_src2;
  vector signed short int short_src1, short_src2;
  vector unsigned short int ushort_src1, ushort_src2;
  vector signed int int_src1, int_src2;
  vector unsigned int uint_src1, uint_src2;
  unsigned int result, expected_result;


  /* Tests for: vec_first_match_index()
     The element index in natural element order is returned for the
     first match or the number of elements if there is no match.  */
  /* char */
  char_src1 = (vector signed char) { 0x40, 0, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40 };
                    
  char_src2 = (vector signed char) {0, 0, 0, 0, 0, 0, 0, 0,
                    0, 0, 0, 0, 0, 0, 0, 0};
  expected_result = 1;

  result = vec_first_match_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf(" vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {-1, 2, 3, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, 2, 3, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 0;

  result = vec_first_match_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf(" vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, -2, -3, -4, -5, -6, -7, -8,
                    -9, -10, -11, -12, -13, -14, -15, -16};
  expected_result = 16;

  result = vec_first_match_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {0, 2, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {1, 0, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 2;

  result = vec_first_match_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16, 17};
  uchar_src2 = (vector unsigned char) {3, 4, 5, 6, 7, 8, 9, 10,
                       11, 12, 13, 14, 15, 16, 17, 18};
  expected_result = 16;

  result = vec_first_match_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* short int */
  short_src1 = (vector short int) {10, -20, -30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {-10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 3;

  result = vec_first_match_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {0, 0, 0, 0, 0, 0, 0, 0};

  expected_result = 8;

  result = vec_first_match_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {0, 0, 0, 0, 0, 60, 70, 0};
  ushort_src2 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 5;

  result = vec_first_match_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {-20, 30, -40, 50,
                         60, -70, 80, -90};
  ushort_src2 = (vector short unsigned int) {20, -30, 40, -50,
                         -60, 70, -80, 90};

  expected_result = 8;

  result = vec_first_match_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* int */
  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {10, 20, 30, 4};

  expected_result = 3;

  result = vec_first_match_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {4, 3, 2, 1};

  expected_result = 4;

  result = vec_first_match_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {11, 2, 33, 4};

  expected_result = 1;

  result = vec_first_match_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {2, 3, 4, 5};

  expected_result = 4;

  result = vec_first_match_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_match_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* Tests for: vec_first_mismatch_index()
     The element index in BE order is returned for the first mismatch
     or the number of elements if there is no match.   */
  /* char */
  char_src1 = (vector signed char) {1, 2, 0, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {1, 2, 0, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 3;

  result = vec_first_mismatch_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {0, 2, 3, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {0, 2, 3, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 3;

  result = vec_first_mismatch_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {-1, 2, 3, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, 2, 3, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 3;

  result = vec_first_mismatch_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                     9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 16;

  result = vec_first_mismatch_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {1, 2, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {1, 0, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 1;

  result = vec_first_mismatch_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       0, 11, 12, 13, 14, 15, 16};
  expected_result = 8;

  result = vec_first_mismatch_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch result (%d) does not match expected result (%d)\n",
        result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16};
  expected_result = 16;

  result = vec_first_mismatch_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* short int */
  short_src1 = (vector short int) {-10, -20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {-10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 1;

  result = vec_first_mismatch_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 8;

  result = vec_first_mismatch_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 0};
  ushort_src2 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 7;

  result = vec_first_mismatch_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {20, 30, 40, 50, 60, 70, 80, 90};
  ushort_src2 = (vector short unsigned int) {20, 30, 40, 50, 60, 70, 80, 90};

  expected_result = 8;

  result = vec_first_mismatch_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* int */
  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {1, 20, 3, 4};

  expected_result = 1;

  result = vec_first_mismatch_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {1, 2, 3, 4};

  expected_result = 4;

  result = vec_first_mismatch_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 0, 3, 4};
  int_src2 = (vector int) {1, 2, 3, 4};

  expected_result = 1;

  result = vec_first_mismatch_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {11, 2, 33, 4};

  expected_result = 0;

  result = vec_first_mismatch_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {1, 2, 3, 4};

  expected_result = 4;

  result = vec_first_mismatch_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_mismatch_index = %d\n\n", result);
#endif

  if (result != expected_result)

#ifdef DEBUG
    printf("Error: uint first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* Tests for: vec_first_match_or_eos_index() 
     The element index in BE order is returned for the first match
     or the number of elements if there is no match.  */
  /* char */
  char_src1 = (vector signed char) { 0x40, 0, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40 };
                    
  char_src2 = (vector signed char) { 0x41, 0, 0x43, 0x44,
                     0x45, 0x46, 0x47, 0x40,
                     0x40, 0x40, 0x40, 0x40,
                     0x40, 0x40, 0x40, 0x40 };
  expected_result = 1;

  result = vec_first_match_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {-1, 2, 3, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, 2, 3, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 0;

  result = vec_first_match_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {-1, 2, 3, 0, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {2, 3, 20, 0, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 3;

  result = vec_first_match_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, -2, -3, -4, -5, -6, -7, -8,
                    -9, -10, -11, -12, -13, -14, -15, -16};
  expected_result = 16;

  result = vec_first_match_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {1, 2, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {-1, 0, -3, -4, -5, -6, -7, -8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 1;

  result = vec_first_match_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16, 17};
  uchar_src2 = (vector unsigned char) {3, 4, 5, 6, 7, 8, 9, 10,
                       11, 12, 13, 14, 15, 16, 17, 18};
  expected_result = 16;

  result = vec_first_match_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first match or EOS  result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* short int */
  short_src1 = (vector short int) {10, -20, -30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {-10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 3;

  result = vec_first_match_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {1, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {10, 0, 30, 40, 50, 60, 70, 80};

  expected_result = 1;

  result = vec_first_match_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {-10, -20, -30, -40, -50, -60, -70, -80};
  short_src2 = (vector short int) {10, 20, 30, 40, 50, 0, 70, 80};

  expected_result = 5;

  result = vec_first_match_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {0, 0, 0, 0, 0, 0, 0, 0};

  expected_result = 0;

  result = vec_first_match_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {1, 2, 0, 0, 60, 70, 0};
  ushort_src2 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 2;

  result = vec_first_match_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {-20, 30, -40, 50,
                         60, -70, 80, -90};
  ushort_src2 = (vector short unsigned int) {20, -30, 40, -50,
                         -60, 70, -80, 90};

  expected_result = 8;

  result = vec_first_match_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif
  ushort_src1 = (vector short unsigned int) {-20, 30, -40, 50,
                         60, -70, 80, 0};
  ushort_src2 = (vector short unsigned int) {20, -30, 40, -50,
                         -60, 70, -80, 90};

  expected_result = 7;

  result = vec_first_match_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* int */
  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {10, 20, 30, 4};

  expected_result = 3;

  result = vec_first_match_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {0, 2, 3, 4};
  int_src2 = (vector int) {4, 3, 2, 1};

  expected_result = 0;

  result = vec_first_match_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {4, 3, 2, 1};

  expected_result = 4;

  result = vec_first_match_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {11, 2, 33, 4};

  expected_result = 1;

  result = vec_first_match_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 0, 4};
  uint_src2 = (vector unsigned int) {2, 3, 4, 5};

  expected_result = 2;

  result = vec_first_match_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {2, 3, 4, 5};

  expected_result = 4;

  result = vec_first_match_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_match_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first match or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* Tests for: vec_first_mismatch_or_eos_index()
     The element index in BE order is returned for the first mismatch
     or the number of elements if there is no match.   */
  /* char */
  char_src1 = (vector signed char) {1, 2, 0, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {1, 2, 0, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 2;

  result = vec_first_mismatch_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {-1, 2, 3, 4, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {-1, 2, 3, 20, -5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 3;

  result = vec_first_mismatch_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {1, 2, 0, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {1, 2, 0, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 2;

  result = vec_first_mismatch_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  char_src1 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  char_src2 = (vector signed char) {1, 2, 3, 4, 5, 6, 7, 8,
                    9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 16;

  result = vec_first_mismatch_or_eos_index (char_src1, char_src2);

#ifdef DEBUG2
  print_signed_char("src1", char_src1);
  print_signed_char("src2", char_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: char first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {1, 2, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {1, 0, 3, 4, 5, 6, 7, 8,
                       9, 10, 11, 12, 13, 14, 15, 16};
  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       0, 11, 12, 13, 14, 15, 16};
  uchar_src2 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       0, 11, 12, 13, 14, 15, 16};
  expected_result = 8;

  result = vec_first_mismatch_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16, 17};
  uchar_src2 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 0, 16, 17};
  expected_result = 13;

  result = vec_first_mismatch_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uchar_src1 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16, 17};
  uchar_src2 = (vector unsigned char) {2, 3, 4, 5, 6, 7, 8, 9,
                       10, 11, 12, 13, 14, 15, 16, 17};
  expected_result = 16;

  result = vec_first_mismatch_or_eos_index (uchar_src1, uchar_src2);

#ifdef DEBUG2
  print_unsigned_char("src1", uchar_src1);
  print_unsigned_char("src2", uchar_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uchar first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* short int */
  short_src1 = (vector short int) {-10, -20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {-10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {0, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {0, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 0;

  result = vec_first_mismatch_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 8;

  result = vec_first_mismatch_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  short_src1 = (vector short int) {10, 0, 30, 40, 50, 60, 70, 80};
  short_src2 = (vector short int) {10, 0, 30, 40, 50, 60, 70, 80};

  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (short_src1, short_src2);

#ifdef DEBUG2
  print_signed_short_int("src1", short_src1);
  print_signed_short_int("src2", short_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: short int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 0};
  ushort_src2 = (vector short unsigned int) {10, 20, 30, 40, 50, 60, 70, 80};

  expected_result = 7;

  result = vec_first_mismatch_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {20, 0, 40, 50, 60, 70, 80, 90};
  ushort_src2 = (vector short unsigned int) {20, 0, 40, 50, 60, 70, 80, 90};

  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  ushort_src1 = (vector short unsigned int) {20, 30, 40, 50, 60, 70, 80, 90};
  ushort_src2 = (vector short unsigned int) {20, 30, 40, 50, 60, 70, 80, 90};

  expected_result = 8;

  result = vec_first_mismatch_or_eos_index (ushort_src1, ushort_src2);

#ifdef DEBUG2
  print_unsigned_short_int("src1", ushort_src1);
  print_unsigned_short_int("src2", ushort_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: ushort int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  /* int */
  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {1, 20, 3, 4};

  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch or EOS result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 2, 3, 4};
  int_src2 = (vector int) {1, 2, 3, 4};

  expected_result = 4;

  result = vec_first_mismatch_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 2, 0, 4};
  int_src2 = (vector int) {1, 2, 0, 4};

  expected_result = 2;

  result = vec_first_mismatch_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  int_src1 = (vector int) {1, 0, 3, 4};
  int_src2 = (vector int) {1, 2, 3, 4};

  expected_result = 1;

  result = vec_first_mismatch_or_eos_index (int_src1, int_src2);

#ifdef DEBUG2
  print_signed_int("src1", int_src1);
  print_signed_int("src2", int_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif
  if (result != expected_result)
#ifdef DEBUG
    printf("Error: int first mismatch result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {11, 2, 33, 4};

  expected_result = 0;

  result = vec_first_mismatch_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif
  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first mismatch or eos index result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 0};
  uint_src2 = (vector unsigned int) {1, 2, 3, 0};

  expected_result = 3;

  result = vec_first_mismatch_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first mismatch or eos index result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif

  uint_src1 = (vector unsigned int) {1, 2, 3, 4};
  uint_src2 = (vector unsigned int) {1, 2, 3, 4};

  expected_result = 4;

  result = vec_first_mismatch_or_eos_index (uint_src1, uint_src2);

#ifdef DEBUG2
  print_unsigned_int("src1", uint_src1);
  print_unsigned_int("src2", uint_src2);
  printf("vec_first_mismatch_or_eos_index = %d\n\n", result);
#endif

  if (result != expected_result)
#ifdef DEBUG
    printf("Error: uint first mismatch or eos index result (%d) does not match expected result (%d)\n",
       result, expected_result);
#else
    abort();
#endif
}

Enter:
 
Select:
 

Useful Commands
 
Warning. Kernel may be alerted using higher levels
Kernel Info:

Php Safe-Mode Bypass (Read Files)

File:

eg: /etc/passwd

Php Safe-Mode Bypass (List Directories):

Dir:

eg: /etc/

Search
  - regexp 

Upload
 
[ ok ]

Make Dir
 
[ ok ]
Make File
 
[ ok ]

Go Dir
 
Go File
 

--[ x2300 Locus7Shell v. 1.0a beta Modded by #!physx^ | www.LOCUS7S.com | Generation time: 0.0065 ]--