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/i386/   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:     pr80732.c (2.44 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
/* PR ipa/80732 */
/* { dg-do run } */
/* { dg-options "-ldl -fPIC -rdynamic -O3 -g -pie" } */
/* { dg-require-ifunc "" } */
/* { dg-require-effective-target fma4 } */
/* { dg-require-effective-target fpic } */
/* { dg-require-effective-target pie } */

#include "fma4-check.h"

#include <dlfcn.h>

__attribute__((target_clones("default","fma"),noinline,optimize("fast-math")))
double f1(double a, double b, double c)
{
    return a * b + c;
}

double k1(double a, double b, double c, void **p)
{
    *p = f1;
    return f1(a, b, c);
}

__attribute__((target("fma"),optimize("fast-math")))
static double f2_fma(double a, double b, double c)
{
    return a * b + c;
}

__attribute__((optimize("fast-math")))
static double f2_default(double a, double b, double c)
{
    return a * b + c;
}

static __typeof__ (f2_fma)* f2_resolve(void)
{
    __builtin_cpu_init ();
    if (__builtin_cpu_supports("fma"))
        return f2_fma;
    else
        return f2_default;
}

double f2(double a, double b, double c) __attribute__((ifunc("f2_resolve")));

double k2(double a, double b, double c, void **p)
{
    *p = f2;
    return f2(a, b, c);
}

double (*initializer) (double, double, double) = { &f1 };

static void
fma4_test (void)
{
    char buffer[256];
    const char *expectation = "4.93038e-32, 4.93038e-32, 4.93038e-32";

    volatile double a = 1.0000000000000002;
    volatile double b = -0.9999999999999998;
    volatile double c = 1.0;

    void *hdl = dlopen(0, RTLD_NOW);

    double (*pf1)(double, double, double) = dlsym(hdl, "f1");
    double (*pk1)(double, double, double, void**) = dlsym(hdl, "k1");
    double (*_pf1)(double, double, double);

    double v1_1 = pf1(a, b, c);
    double v1_2 = pk1(a, b, c, (void**)&_pf1);
    double v1_3 = _pf1(a, b, c);
    __builtin_sprintf (buffer, "%g, %g, %g", v1_1, v1_2, v1_3);
    if (__builtin_strcmp (buffer, expectation) != 0)
      __builtin_abort ();

    double (*pf2)(double, double, double) = dlsym(hdl, "f2");
    double (*pk2)(double, double, double, void**) = dlsym(hdl, "k2");
    double (*_pf2)(double, double, double);

    double v2_1 = pf2(a, b, c);
    double v2_2 = pk2(a, b, c, (void**)&_pf2);
    double v2_3 = _pf2(a, b, c);
    __builtin_sprintf(buffer, "%g, %g, %g", v2_1, v2_2, v2_3);
    if (__builtin_strcmp (buffer, expectation) != 0)
      __builtin_abort ();

    __builtin_sprintf(buffer, "%g, %g, %g", initializer (a, b, c), v2_2, v2_3);
    if (__builtin_strcmp (buffer, expectation) != 0)
      __builtin_abort ();
}

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