<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src-test2/include/complex.h, branch release/11.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src-test2/atom?h=release%2F11.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/'/>
<updated>2018-07-27T17:39:36Z</updated>
<entry>
<title>MFC r327400 (by eadler):</title>
<updated>2018-07-27T17:39:36Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2018-07-27T17:39:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3d1716c561bd4f521838bd1496f26e2b4797ce6a'/>
<id>urn:sha1:3d1716c561bd4f521838bd1496f26e2b4797ce6a</id>
<content type='text'>
cacos(3): correct spelling of 'I'

In some cases we had 'i' instead of 'I'.

PR:		195517
Submitted by:	stephen

MFC r329259 (by eadler):

msun: signed overflow in atan2

As a component of atan2(y, x), the case of x == 1.0 is farmed out to
atan(y). The current implementation of this comparison is vulnerable
to signed integer underflow (that is, undefined behavior), and it's
performed in a somewhat more complicated way than it need be. Change
it to not be quite so cute, rather directly comparing the high/low
bits of x to the specific IEEE-754 bit pattern that encodes 1.0.

Note that while there are three different e_atan* files in the
relevant directory, only this one needs fixing. e_atan2f.c already
compares against the full bit pattern encoding 1.0f, while
e_atan2l.cuses bitwise-ands/ors/nots and so doesn't require a change.

Closes #130

Submitted by:	Jeff Walden (@jswalden github PR #130)
Reviewed by:	bde

MFC r334721 (by cem):

clog.3, complex.3: Fix typos and igor style issues

PR:		228783
Reported by:	Karsten &lt;freebsd-bugzilla AT kkoenig.net&gt;

MFC r336299 (by mmacy):

msun: add ld80/ld128 powl, cpow, cpowf, cpowl from openbsd

This corresponds to the latest status (hasn't changed in 9+
years) from openbsd of ld80/ld128 powl, and source cpowf, cpow,
cpowl (the complex power functions for float complex, double
complex, and long double complex) which are required for C99
compliance and were missing from FreeBSD. Also required for
some numerical codes using complex numbered Hamiltonians.

Thanks to jhb for tracking down the issue with making
weak_reference compile on powerpc.

When asked to review, bde said "I don't like it" - but
provided no actionable feedback or superior implementations.

Discussed with: jhb
Submitted by: jmd
Differential Revision: https://reviews.freebsd.org/D15919

MFC r336563:

Recommit r336497: Fix powl, cpow, cpowf, and cpowl imports from OpenBSD

This is a follow-up to r336299.

* lib/msun/Makefile:
  . Remove polevll.c

* lib/msun/ld80/e_powl.c:
  . Copy contents of polevll.c to here.  This is the only consumer of
    these functions.  Make functions 'static inline'.
  . Make reducl a 'static inline' function.

* lib/msun/man/exp.3:
  . Remove BUGS section that no longer applies.

* lib/msun/src/math_private.h:
  . Remove prototypes of __p1evll() and __polevll()

* lib/msun/src/s_cpow.c:
* lib/msun/src/s_cpowf.c:
* lib/msun/src/s_cpowl.c
  . Include math_private.h.
  . Use the CMPLX macro from either C99 or math_private.h (depends on
    compiler support) instead of the problematic use of complex I.

Submitted by:	Steve Kargl &lt;sgk@troutmask.apl.washington.edu&gt;
PR:		229876
</content>
</entry>
<entry>
<title>MFC r333577:</title>
<updated>2018-06-05T13:46:18Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2018-06-05T13:46:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=25ab55225eeb62b862355ad3981d9368aba0336b'/>
<id>urn:sha1:25ab55225eeb62b862355ad3981d9368aba0336b</id>
<content type='text'>
Add implementations for clog(3), clogf(3), and clogl(3).

PR:	216863
</content>
</entry>
<entry>
<title>Revert r330897:</title>
<updated>2018-03-29T02:50:57Z</updated>
<author>
<name>Eitan Adler</name>
<email>eadler@FreeBSD.org</email>
</author>
<published>2018-03-29T02:50:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=4ab2e064d7950be84256d671a7ae93f87cc6aa36'/>
<id>urn:sha1:4ab2e064d7950be84256d671a7ae93f87cc6aa36</id>
<content type='text'>
This was intended to be a non-functional change. It wasn't. The commit
message was thus wrong. In addition it broke arm, and merged crypto
related code.

Revert with prejudice.

This revert skips files touched in r316370 since that commit was since
MFCed. This revert also skips files that require $FreeBSD$ property
changes.

Thank you to those who helped me get out of this mess including but not
limited to gonzo, kevans, rgrimes.

Requested by: gjb (re)
</content>
</entry>
<entry>
<title>Partial merge of the SPDX changes</title>
<updated>2018-03-14T03:19:51Z</updated>
<author>
<name>Eitan Adler</name>
<email>eadler@FreeBSD.org</email>
</author>
<published>2018-03-14T03:19:51Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=be5d0b9566b13fdf8cabebb63334cbec12bfc409'/>
<id>urn:sha1:be5d0b9566b13fdf8cabebb63334cbec12bfc409</id>
<content type='text'>
These changes are incomplete but are making it difficult
to determine what other changes can/should be merged.

No objections from:	pfg
</content>
</entry>
<entry>
<title>I'm happy to finally commit stephen@'s implementations of cacos,</title>
<updated>2013-05-30T04:49:26Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2013-05-30T04:49:26Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e4afa19c33cea91d3fad8bd97b7666002f0d3baa'/>
<id>urn:sha1:e4afa19c33cea91d3fad8bd97b7666002f0d3baa</id>
<content type='text'>
cacosh, casin, casinh, catan, and catanh. Thanks to stephen@ and bde@
for working on these.

Submitted by:	stephen@
Reviewed by:	bde
</content>
</entry>
<entry>
<title>Add C11 macros CMPLX(), CMPLXF() and CMPLXL().</title>
<updated>2013-05-25T18:55:55Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2013-05-25T18:55:55Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=e814330de14da51f4555e8b075913e3d29f8ead1'/>
<id>urn:sha1:e814330de14da51f4555e8b075913e3d29f8ead1</id>
<content type='text'>
Clang allows us to initialize complex numbers using an array
initializer, casted to a complex type. GCC has a builtin called
__builtin_complex().
</content>
</entry>
<entry>
<title>Only use the static assertion when __generic is available.</title>
<updated>2012-01-17T20:22:10Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2012-01-17T20:22:10Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=76f11d88aa33b0a3e28d066a5dc0dd6890aa9a6f'/>
<id>urn:sha1:76f11d88aa33b0a3e28d066a5dc0dd6890aa9a6f</id>
<content type='text'>
Reported by:	tijl
</content>
</entry>
<entry>
<title>Remove redundant inclusion of &lt;sys/cdefs.h&gt;.</title>
<updated>2012-01-05T12:09:39Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2012-01-05T12:09:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=ff3e248a9061bd02656490815d1a3309de263368'/>
<id>urn:sha1:ff3e248a9061bd02656490815d1a3309de263368</id>
<content type='text'>
Mea culpa.
</content>
</entry>
<entry>
<title>Make _Complex_I a proper float _Complex when using GCC 4.2.</title>
<updated>2012-01-05T12:05:48Z</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2012-01-05T12:05:48Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=f92d9d7d375049753865aa2a50428162f23c4a44'/>
<id>urn:sha1:f92d9d7d375049753865aa2a50428162f23c4a44</id>
<content type='text'>
It turns out our GCC has quite an interesting bug:

	typeof(1.0fi) != float _Complex
	typeof((float _Complex)1.0fi) != float _Complex
	typeof((float _Complex)1.0i) == float _Complex

In other words: if casting to an equal size, GCC seems to take a
shortcut. By casting down from a double to a float, GCC doesn't take
this shortcut, yielding the proper type.

To prevent foot-shooting, add a _Static_assert() to guarantee that
_Complex_I is always a float _Complex. I'm not going to MFC this part of
the diff.

MFC after:	2 weeks
</content>
</entry>
<entry>
<title>Add c{cos,sin,tan}{,h}{,f} functions.  This is joint work with</title>
<updated>2011-10-17T05:41:03Z</updated>
<author>
<name>David Schultz</name>
<email>das@FreeBSD.org</email>
</author>
<published>2011-10-17T05:41:03Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src-test2/commit/?id=3daee1d6c3783e32a226d145f85a887007f5754b'/>
<id>urn:sha1:3daee1d6c3783e32a226d145f85a887007f5754b</id>
<content type='text'>
bde and kargl.
</content>
</entry>
</feed>
