All pastes #2046281 Raw Edit

Something

public c v1 · immutable
#2046281 ·published 2011-04-14 07:13 UTC
rendered paste body
#include <stdio.h>#include <xmmintrin.h>#include <emmintrin.h>inline int sse_round(double x){    return(_mm_cvtsd_si32(_mm_set_sd(x)));}inline int round_int(double x){    int i;    const float round_to_nearest = 0.5f;    __asm__ __volatile__ (        "fadd %%st\n\t"        "fadd %%st(1)\n\t"        "fistpl %0\n\t"        "sarl $1, %0\n"        : "=m"(i) : "u"(round_to_nearest), "t"(x) : "st"    );    return (i);}int main(int argc, char *argv[]) {  printf("%d %d\n", round_int(atof(argv[1])), sse_round(atof(argv[1])));}