1  | 
     | 
     | 
    //===-- lib/negsf2.c - single-precision negation ------------------*- C -*-===//  | 
    
    
    2  | 
     | 
     | 
    //  | 
    
    
    3  | 
     | 
     | 
    //                     The LLVM Compiler Infrastructure  | 
    
    
    4  | 
     | 
     | 
    //  | 
    
    
    5  | 
     | 
     | 
    // This file is dual licensed under the MIT and the University of Illinois Open  | 
    
    
    6  | 
     | 
     | 
    // Source Licenses. See LICENSE.TXT for details.  | 
    
    
    7  | 
     | 
     | 
    //  | 
    
    
    8  | 
     | 
     | 
    //===----------------------------------------------------------------------===//  | 
    
    
    9  | 
     | 
     | 
    //  | 
    
    
    10  | 
     | 
     | 
    // This file implements single-precision soft-float negation.  | 
    
    
    11  | 
     | 
     | 
    //  | 
    
    
    12  | 
     | 
     | 
    //===----------------------------------------------------------------------===//  | 
    
    
    13  | 
     | 
     | 
     | 
    
    
    14  | 
     | 
     | 
    #define SINGLE_PRECISION  | 
    
    
    15  | 
     | 
     | 
    #include "fp_lib.h"  | 
    
    
    16  | 
     | 
     | 
     | 
    
    
    17  | 
     | 
     | 
    ARM_EABI_FNALIAS(fneg, negsf2)  | 
    
    
    18  | 
     | 
     | 
     | 
    
    
    19  | 
     | 
     | 
    COMPILER_RT_ABI fp_t  | 
    
    
    20  | 
     | 
     | 
    __negsf2(fp_t a) { | 
    
    
    21  | 
     | 
     | 
        return fromRep(toRep(a) ^ signBit);  | 
    
    
    22  | 
     | 
     | 
    }  |