📄 libgcc.texi
字号:
@end deftypefn@deftypefn {Runtime Function} int __nesf2 (float @var{a}, float @var{b})@deftypefnx {Runtime Function} int __nedf2 (double @var{a}, double @var{b})@deftypefnx {Runtime Function} int __netf2 (long double @var{a}, long double @var{b})These functions return a nonzero value if either argument is NaN, orif @var{a} and @var{b} are unequal.@end deftypefn@deftypefn {Runtime Function} int __gesf2 (float @var{a}, float @var{b})@deftypefnx {Runtime Function} int __gedf2 (double @var{a}, double @var{b})@deftypefnx {Runtime Function} int __getf2 (long double @var{a}, long double @var{b})These functions return a value greater than or equal to zero ifneither argument is NaN, and @var{a} is greater than or equal to@var{b}.@end deftypefn@deftypefn {Runtime Function} int __ltsf2 (float @var{a}, float @var{b})@deftypefnx {Runtime Function} int __ltdf2 (double @var{a}, double @var{b})@deftypefnx {Runtime Function} int __lttf2 (long double @var{a}, long double @var{b})These functions return a value less than zero if neither argument isNaN, and @var{a} is strictly less than @var{b}.@end deftypefn@deftypefn {Runtime Function} int __lesf2 (float @var{a}, float @var{b})@deftypefnx {Runtime Function} int __ledf2 (double @var{a}, double @var{b})@deftypefnx {Runtime Function} int __letf2 (long double @var{a}, long double @var{b})These functions return a value less than or equal to zero if neitherargument is NaN, and @var{a} is less than or equal to @var{b}.@end deftypefn@deftypefn {Runtime Function} int __gtsf2 (float @var{a}, float @var{b})@deftypefnx {Runtime Function} int __gtdf2 (double @var{a}, double @var{b})@deftypefnx {Runtime Function} int __gttf2 (long double @var{a}, long double @var{b})These functions return a value greater than zero if neither argumentis NaN, and @var{a} is strictly greater than @var{b}.@end deftypefn@subsection Other floating-point functions@deftypefn {Runtime Function} float __powisf2 (float @var{a}, int @var{b})@deftypefnx {Runtime Function} double __powidf2 (double @var{a}, int @var{b})@deftypefnx {Runtime Function} {long double} __powitf2 (long double @var{a}, int @var{b})@deftypefnx {Runtime Function} {long double} __powixf2 (long double @var{a}, int @var{b})These functions convert raise @var{a} to the power @var{b}.@end deftypefn@deftypefn {Runtime Function} {complex float} __mulsc3 (float @var{a}, float @var{b}, float @var{c}, float @var{d})@deftypefnx {Runtime Function} {complex double} __muldc3 (double @var{a}, double @var{b}, double @var{c}, double @var{d})@deftypefnx {Runtime Function} {complex long double} __multc3 (long double @var{a}, long double @var{b}, long double @var{c}, long double @var{d})@deftypefnx {Runtime Function} {complex long double} __mulxc3 (long double @var{a}, long double @var{b}, long double @var{c}, long double @var{d})These functions return the product of @math{@var{a} + i@var{b}} and@math{@var{c} + i@var{d}}, following the rules of C99 Annex G@.@end deftypefn@deftypefn {Runtime Function} {complex float} __divsc3 (float @var{a}, float @var{b}, float @var{c}, float @var{d})@deftypefnx {Runtime Function} {complex double} __divdc3 (double @var{a}, double @var{b}, double @var{c}, double @var{d})@deftypefnx {Runtime Function} {complex long double} __divtc3 (long double @var{a}, long double @var{b}, long double @var{c}, long double @var{d})@deftypefnx {Runtime Function} {complex long double} __divxc3 (long double @var{a}, long double @var{b}, long double @var{c}, long double @var{d})These functions return the quotient of @math{@var{a} + i@var{b}} and@math{@var{c} + i@var{d}} (i.e., @math{(@var{a} + i@var{b}) / (@var{c}+ i@var{d})}), following the rules of C99 Annex G@.@end deftypefn@node Decimal float library routines@section Routines for decimal floating point emulation@cindex decimal float library@cindex IEEE-754RThe software decimal floating point library implements IEEE 754Rdecimal floating point arithmetic and is only activated on selectedtargets.The software decimal floating point library supports either DPD (Densely Packed Decimal) or BID (Binary Integer Decimal) encoding as selected at configure time.@subsection Arithmetic functions@deftypefn {Runtime Function} _Decimal32 __dpd_addsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal32 __bid_addsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal64 __dpd_adddd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal64 __bid_adddd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal128 __dpd_addtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})@deftypefnx {Runtime Function} _Decimal128 __bid_addtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})These functions return the sum of @var{a} and @var{b}.@end deftypefn@deftypefn {Runtime Function} _Decimal32 __dpd_subsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal32 __bid_subsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal64 __dpd_subdd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal64 __bid_subdd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal128 __dpd_subtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})@deftypefnx {Runtime Function} _Decimal128 __bid_subtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})These functions return the difference between @var{b} and @var{a};that is, @w{@math{@var{a} - @var{b}}}.@end deftypefn@deftypefn {Runtime Function} _Decimal32 __dpd_mulsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal32 __bid_mulsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal64 __dpd_muldd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal64 __bid_muldd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal128 __dpd_multd3 (_Decimal128 @var{a}, _Decimal128 @var{b})@deftypefnx {Runtime Function} _Decimal128 __bid_multd3 (_Decimal128 @var{a}, _Decimal128 @var{b})These functions return the product of @var{a} and @var{b}.@end deftypefn@deftypefn {Runtime Function} _Decimal32 __dpd_divsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal32 __bid_divsd3 (_Decimal32 @var{a}, _Decimal32 @var{b})@deftypefnx {Runtime Function} _Decimal64 __dpd_divdd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal64 __bid_divdd3 (_Decimal64 @var{a}, _Decimal64 @var{b})@deftypefnx {Runtime Function} _Decimal128 __dpd_divtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})@deftypefnx {Runtime Function} _Decimal128 __bid_divtd3 (_Decimal128 @var{a}, _Decimal128 @var{b})These functions return the quotient of @var{a} and @var{b}; that is,@w{@math{@var{a} / @var{b}}}.@end deftypefn@deftypefn {Runtime Function} _Decimal32 __dpd_negsd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_negsd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal64 __dpd_negdd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_negdd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_negtd2 (_Decimal128 @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_negtd2 (_Decimal128 @var{a})These functions return the negation of @var{a}. They simply flip thesign bit, so they can produce negative zero and negative NaN@.@end deftypefn@subsection Conversion functions@deftypefn {Runtime Function} _Decimal64 __dpd_extendsddd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_extendsddd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extendsdtd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extendsdtd2 (_Decimal32 @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extendddtd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extendddtd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal32 __dpd_truncddsd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_truncddsd2 (_Decimal64 @var{a})@deftypefnx {Runtime Function} _Decimal32 __dpd_trunctdsd2 (_Decimal128 @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_trunctdsd2 (_Decimal128 @var{a})@deftypefnx {Runtime Function} _Decimal64 __dpd_trunctddd2 (_Decimal128 @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_trunctddd2 (_Decimal128 @var{a})These functions convert the value @var{a} from one decimal floating typeto another.@end deftypefn@deftypefn {Runtime Function} _Decimal64 __dpd_extendsfdd (float @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_extendsfdd (float @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extendsftd (float @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extendsftd (float @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extenddftd (double @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extenddftd (double @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extendxftd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extendxftd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal32 __dpd_truncdfsd (double @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_truncdfsd (double @var{a})@deftypefnx {Runtime Function} _Decimal32 __dpd_truncxfsd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_truncxfsd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal32 __dpd_trunctfsd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_trunctfsd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal64 __dpd_truncxfdd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_truncxfdd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal64 __dpd_trunctfdd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_trunctfdd ({long double} @var{a})These functions convert the value of @var{a} from a binary floating typeto a decimal floating type of a different size.@end deftypefn@deftypefn {Runtime Function} float __dpd_truncddsf (_Decimal64 @var{a})@deftypefnx {Runtime Function} float __bid_truncddsf (_Decimal64 @var{a})@deftypefnx {Runtime Function} float __dpd_trunctdsf (_Decimal128 @var{a})@deftypefnx {Runtime Function} float __bid_trunctdsf (_Decimal128 @var{a})@deftypefnx {Runtime Function} double __dpd_extendsddf (_Decimal32 @var{a})@deftypefnx {Runtime Function} double __bid_extendsddf (_Decimal32 @var{a})@deftypefnx {Runtime Function} double __dpd_trunctddf (_Decimal128 @var{a})@deftypefnx {Runtime Function} double __bid_trunctddf (_Decimal128 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_extendsdxf (_Decimal32 @var{a})@deftypefnx {Runtime Function} {long double} __bid_extendsdxf (_Decimal32 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_extendddxf (_Decimal64 @var{a})@deftypefnx {Runtime Function} {long double} __bid_extendddxf (_Decimal64 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_trunctdxf (_Decimal128 @var{a})@deftypefnx {Runtime Function} {long double} __bid_trunctdxf (_Decimal128 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_extendsdtf (_Decimal32 @var{a})@deftypefnx {Runtime Function} {long double} __bid_extendsdtf (_Decimal32 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_extendddtf (_Decimal64 @var{a})@deftypefnx {Runtime Function} {long double} __bid_extendddtf (_Decimal64 @var{a})These functions convert the value of @var{a} from a decimal floating typeto a binary floating type of a different size.@end deftypefn@deftypefn {Runtime Function} _Decimal32 __dpd_extendsfsd (float @var{a})@deftypefnx {Runtime Function} _Decimal32 __bid_extendsfsd (float @var{a})@deftypefnx {Runtime Function} _Decimal64 __dpd_extenddfdd (double @var{a})@deftypefnx {Runtime Function} _Decimal64 __bid_extenddfdd (double @var{a})@deftypefnx {Runtime Function} _Decimal128 __dpd_extendtftd ({long double} @var{a})@deftypefnx {Runtime Function} _Decimal128 __bid_extendtftd ({long double} @var{a})@deftypefnx {Runtime Function} float __dpd_truncsdsf (_Decimal32 @var{a})@deftypefnx {Runtime Function} float __bid_truncsdsf (_Decimal32 @var{a})@deftypefnx {Runtime Function} double __dpd_truncdddf (_Decimal64 @var{a})@deftypefnx {Runtime Function} double __bid_truncdddf (_Decimal64 @var{a})@deftypefnx {Runtime Function} {long double} __dpd_trunctdtf (_Decimal128 @var{a})@deftypefnx {Runtime Function} {long double} __bid_trunctdtf (_Decimal128 @var{a})These functions convert the value of @var{a} between decimal andbinary floating types of the same size.@end deftypefn@deftypefn {Runtime Function} int __dpd_fixsdsi (_Decimal32 @var{a})@deftypefnx {Runtime Function} int __bid_fixsdsi (_Decimal32 @var{a})@deftypefnx {Runtime Function} int __dpd_fixddsi (_Decimal64 @var{a})@deftypefnx {Runtime Function} int __bid_fixddsi (_Decimal64 @var{a})@deftypefnx {Runtime Function} int __dpd_fixtdsi (_Decimal128 @var{a})@deftypefnx {Runtime Function} int __bid_fixtdsi (_Decimal128 @var{a})These functions convert @var{a} to a signed integer.@end deftypefn
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -