negsf2.c revision b6d4e2e3a87eb3c9a6dec0ad21d4c1dec545c137
1b6d4e2e3a87eb3c9a6dec0ad21d4c1dec545c137Stephen Canon//===-- lib/negsf2.c - single-precision negation ------------------*- C -*-===// 25c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// 35c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// The LLVM Compiler Infrastructure 45c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// 55c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// This file is distributed under the University of Illinois Open Source 65c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// License. See LICENSE.TXT for details. 75c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// 85c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon//===----------------------------------------------------------------------===// 95c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// 105c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// This file implements single-precision soft-float negation. 115c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon// 125c6d2ecb9c43d8b836b3203a243e24703d473765Stephen Canon//===----------------------------------------------------------------------===// 13e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon 14e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon#define SINGLE_PRECISION 15e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon#include "fp_lib.h" 16e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon 17e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canonfp_t __negsf2(fp_t a) { 18e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon return fromRep(toRep(a) ^ signBit); 19e5086322295e5a345af02d09abfcf8ddca2d0897Stephen Canon} 20