17ec681f3Smrg/*
27ec681f3Smrg * License for Berkeley SoftFloat Release 3e
37ec681f3Smrg *
47ec681f3Smrg * John R. Hauser
57ec681f3Smrg * 2018 January 20
67ec681f3Smrg *
77ec681f3Smrg * The following applies to the whole of SoftFloat Release 3e as well as to
87ec681f3Smrg * each source file individually.
97ec681f3Smrg *
107ec681f3Smrg * Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
117ec681f3Smrg * University of California.  All rights reserved.
127ec681f3Smrg *
137ec681f3Smrg * Redistribution and use in source and binary forms, with or without
147ec681f3Smrg * modification, are permitted provided that the following conditions are met:
157ec681f3Smrg *
167ec681f3Smrg *  1. Redistributions of source code must retain the above copyright notice,
177ec681f3Smrg *     this list of conditions, and the following disclaimer.
187ec681f3Smrg *
197ec681f3Smrg *  2. Redistributions in binary form must reproduce the above copyright
207ec681f3Smrg *     notice, this list of conditions, and the following disclaimer in the
217ec681f3Smrg *     documentation and/or other materials provided with the distribution.
227ec681f3Smrg *
237ec681f3Smrg *  3. Neither the name of the University nor the names of its contributors
247ec681f3Smrg *     may be used to endorse or promote products derived from this software
257ec681f3Smrg *     without specific prior written permission.
267ec681f3Smrg *
277ec681f3Smrg * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
287ec681f3Smrg * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
297ec681f3Smrg * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
307ec681f3Smrg * DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
317ec681f3Smrg * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
327ec681f3Smrg * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
337ec681f3Smrg * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
347ec681f3Smrg * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
357ec681f3Smrg * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
367ec681f3Smrg * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
377ec681f3Smrg *
387ec681f3Smrg *
397ec681f3Smrg * The functions listed in this file are modified versions of the ones
407ec681f3Smrg * from the Berkeley SoftFloat 3e Library.
417ec681f3Smrg */
427ec681f3Smrg
437ec681f3Smrg#ifndef _SOFTFLOAT_H_
447ec681f3Smrg#define _SOFTFLOAT_H_
457ec681f3Smrg
467ec681f3Smrg#include <stdbool.h>
477ec681f3Smrg#include <stdint.h>
487ec681f3Smrg
497ec681f3Smrg#ifdef __cplusplus
507ec681f3Smrgextern "C" {
517ec681f3Smrg#endif
527ec681f3Smrg
537ec681f3Smrgdouble _mesa_double_add_rtz(double a, double b);
547ec681f3Smrgdouble _mesa_double_sub_rtz(double a, double b);
557ec681f3Smrgdouble _mesa_double_mul_rtz(double a, double b);
567ec681f3Smrgdouble _mesa_double_fma_rtz(double a, double b, double c);
577ec681f3Smrgfloat _mesa_float_fma_rtz(float a, float b, float c);
587ec681f3Smrgfloat _mesa_double_to_f32(double x, bool rtz);
597ec681f3Smrguint16_t _mesa_float_to_half_rtz_slow(float x);
607ec681f3Smrg
617ec681f3Smrg#ifdef __cplusplus
627ec681f3Smrg} /* extern C */
637ec681f3Smrg#endif
647ec681f3Smrg
657ec681f3Smrg#endif  /* _SOFTFLOAT_H */
66