1*86f9d4cdStedu.\" $OpenBSD: fma.3,v 1.3 2013/06/05 03:40:26 tedu Exp $ 28188d52eSmartynas.\" 38188d52eSmartynas.\" Copyright (c) 2011 Martynas Venckus <martynas@openbsd.org> 48188d52eSmartynas.\" 58188d52eSmartynas.\" Permission to use, copy, modify, and distribute this software for any 68188d52eSmartynas.\" purpose with or without fee is hereby granted, provided that the above 78188d52eSmartynas.\" copyright notice and this permission notice appear in all copies. 88188d52eSmartynas.\" 98188d52eSmartynas.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 108188d52eSmartynas.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 118188d52eSmartynas.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 128188d52eSmartynas.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 138188d52eSmartynas.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 148188d52eSmartynas.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 158188d52eSmartynas.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 168188d52eSmartynas.\" 17*86f9d4cdStedu.Dd $Mdocdate: June 5 2013 $ 188188d52eSmartynas.Dt FMA 3 198188d52eSmartynas.Os 208188d52eSmartynas.Sh NAME 218188d52eSmartynas.Nm fma , 228188d52eSmartynas.Nm fmaf , 238188d52eSmartynas.Nm fmal 248188d52eSmartynas.Nd floating multiply-add 258188d52eSmartynas.Sh SYNOPSIS 26*86f9d4cdStedu.In math.h 278188d52eSmartynas.Ft double 288188d52eSmartynas.Fn fma "double x" "double y" "double z" 298188d52eSmartynas.Ft float 308188d52eSmartynas.Fn fmaf "float x" "float y" "float z" 318188d52eSmartynas.Ft long double 328188d52eSmartynas.Fn fmal "long double x" "long double y" "long double z" 338188d52eSmartynas.Sh DESCRIPTION 348188d52eSmartynasThe 358188d52eSmartynas.Fn fma , 368188d52eSmartynas.Fn fmaf 378188d52eSmartynasand 388188d52eSmartynas.Fn fmal 398188d52eSmartynasfunctions compute (x * y) + z, rounded as one ternary operation. 408188d52eSmartynasThe result is rounded according to the current rounding mode. 418188d52eSmartynas.Sh RETURN VALUES 428188d52eSmartynasThe 438188d52eSmartynas.Fn fma , 448188d52eSmartynas.Fn fmaf 458188d52eSmartynasand 468188d52eSmartynas.Fn fmal 478188d52eSmartynasfunctions return (x * y) + z, rounded as one ternary operation. 488188d52eSmartynas.Sh SEE ALSO 49a99869e7Sjmc.Xr fegetround 3 , 50a99869e7Sjmc.Xr remainder 3 518188d52eSmartynas.Sh STANDARDS 528188d52eSmartynasThe 538188d52eSmartynas.Fn fma , 548188d52eSmartynas.Fn fmaf 558188d52eSmartynasand 568188d52eSmartynas.Fn fmal 578188d52eSmartynasfunctions conform to 588188d52eSmartynas.St -isoC-99 . 59