xref: /netbsd-src/lib/libc/arch/m68k/gen/negsf2.S (revision c1bc7ededb15d59d02201b739b0ced4e6c990f06)
1*c1bc7edeSmatt/*	$NetBSD: negsf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $	*/
29f1ee9aeSthorpej
35f709618Spaulus/*-
45f709618Spaulus * Copyright (c) 1990 The Regents of the University of California.
55f709618Spaulus * All rights reserved.
65f709618Spaulus *
75f709618Spaulus * This code is derived from software contributed to Berkeley by
85f709618Spaulus * the Systems Programming Group of the University of Utah Computer
95f709618Spaulus * Science Department.
105f709618Spaulus *
115f709618Spaulus * Redistribution and use in source and binary forms, with or without
125f709618Spaulus * modification, are permitted provided that the following conditions
135f709618Spaulus * are met:
145f709618Spaulus * 1. Redistributions of source code must retain the above copyright
155f709618Spaulus *    notice, this list of conditions and the following disclaimer.
165f709618Spaulus * 2. Redistributions in binary form must reproduce the above copyright
175f709618Spaulus *    notice, this list of conditions and the following disclaimer in the
185f709618Spaulus *    documentation and/or other materials provided with the distribution.
19eb7c1594Sagc * 3. Neither the name of the University nor the names of its contributors
205f709618Spaulus *    may be used to endorse or promote products derived from this software
215f709618Spaulus *    without specific prior written permission.
225f709618Spaulus *
235f709618Spaulus * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
245f709618Spaulus * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
255f709618Spaulus * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
265f709618Spaulus * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
275f709618Spaulus * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
285f709618Spaulus * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
295f709618Spaulus * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
305f709618Spaulus * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
315f709618Spaulus * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
325f709618Spaulus * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
335f709618Spaulus * SUCH DAMAGE.
345f709618Spaulus */
355f709618Spaulus
36d0fed6c8Sthorpej#include <machine/asm.h>
375f709618Spaulus
389f1ee9aeSthorpej#if defined(LIBC_SCCS) && !defined(lint)
399f1ee9aeSthorpej#if 0
409f1ee9aeSthorpej	RCSID"from: @(#)negsf2.s	5.1 (Berkeley) 6/7/90")
419f1ee9aeSthorpej#else
42*c1bc7edeSmatt	RCSID("$NetBSD: negsf2.S,v 1.10 2013/07/17 06:43:32 matt Exp $")
439f1ee9aeSthorpej#endif
449f1ee9aeSthorpej#endif /* LIBC_SCCS and not lint */
459f1ee9aeSthorpej
465f709618Spaulus/* -single */
475f709618SpaulusENTRY(__negsf2)
48*c1bc7edeSmatt#if defined(__SVR4_ABI__) && defined(__HAVE_FPU__)
4907a0a325Smatt	fnegs	4(%sp),%fp0
50d658cafbSkleink#else
5107a0a325Smatt	movel	4(%sp),%d0
523b435a73Sthorpej	bchg	#31,%d0
53d658cafbSkleink#endif
545f709618Spaulus	rts
5594258182SmattEND(__negsf2)
56