svcomp_BradleyMannaSipma-2005ICALP-Fig1_true-alloca.c

loading
details
attribute value
description
owner Johannes Waldmann
uploaded 2017-08-17 03:45:15.0
disk size 572 Bytes
downloadable true
type
attribute value
name no_type
processor id 1
description this is the default benchmark type for rejected benchmarks and benchmarks that are not associated with a type.
owning community none
loading contents
#include <stdlib.h>

extern int __VERIFIER_nondet_int(void);

int gcd(int y1, int y2) {
    int* y1_ref = alloca(sizeof(int));
    int* y2_ref = alloca(sizeof(int));
    *y1_ref = y1;
    *y2_ref = y2;
    
    while (*y1_ref != *y2_ref) {
        if (*y1_ref > *y2_ref) {
            *y1_ref = *y1_ref - *y2_ref;
        } else {
            *y2_ref = *y2_ref - *y1_ref;
        }
    }
    return *y1_ref;
}

int main() {
    int y1 = __VERIFIER_nondet_int();
    int y2 = __VERIFIER_nondet_int();
    if (y1 >= 0 && y2 >= 0) {
        gcd(y1, y2);
    }
    return 0;
}
popout

content may be truncated. 'popout' for larger text window.

actions get anonymous link download benchmark