view src/libm/s_copysign.c @ 2960:91708bc14aab

It's probably not worth pushing palettized textures. The memory optimization isn't worth the effort on modern hardware with the sorts of games that would be using the SDL 1.3 texture API.
author Sam Lantinga <slouken@libsdl.org>
date Fri, 02 Jan 2009 09:27:36 +0000 (2009-01-02)
parents a98604b691c8
children dc1eb82ffdaa
line wrap: on
line source
/* @(#)s_copysign.c 5.1 93/09/24 */
/*
 * ====================================================
 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
 *
 * Developed at SunPro, a Sun Microsystems, Inc. business.
 * Permission to use, copy, modify, and distribute this
 * software is freely granted, provided that this notice
 * is preserved.
 * ====================================================
 */

#if defined(LIBM_SCCS) && !defined(lint)
static char rcsid[] =
    "$NetBSD: s_copysign.c,v 1.8 1995/05/10 20:46:57 jtc Exp $";
#endif

/*
 * copysign(double x, double y)
 * copysign(x,y) returns a value with the magnitude of x and
 * with the sign bit of y.
 */

#include "math.h"
#include "math_private.h"

libm_hidden_proto(copysign)
#ifdef __STDC__
     double copysign(double x, double y)
#else
     double copysign(x, y)
     double x, y;
#endif
{
    u_int32_t hx, hy;
    GET_HIGH_WORD(hx, x);
    GET_HIGH_WORD(hy, y);
    SET_HIGH_WORD(x, (hx & 0x7fffffff) | (hy & 0x80000000));
    return x;
}

libm_hidden_def(copysign)