Deutsch   English   Français   Italiano  
<vm5r00$2e9ha$1@dont-email.me>

View for Bookmarking (what is this?)
Look up another Usenet article

Path: ...!news.nobody.at!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!eternal-september.org!.POSTED!not-for-mail
From: David Brown <david.brown@hesbynett.no>
Newsgroups: comp.arch
Subject: Re: Calling conventions (particularly 32-bit ARM)
Date: Tue, 14 Jan 2025 15:05:52 +0100
Organization: A noiseless patient Spider
Lines: 39
Message-ID: <vm5r00$2e9ha$1@dont-email.me>
References: <vlgngv$1ks4a$1@dont-email.me>
 <2025Jan8.230846@mips.complang.tuwien.ac.at>
 <jwvr05cq4tx.fsf-monnier+comp.arch@gnu.org>
 <2025Jan9.082357@mips.complang.tuwien.ac.at>
 <vlqm0d$27bfb$1@paganini.bofh.team>
 <2025Jan10.112523@mips.complang.tuwien.ac.at>
 <6be6d207cf7386fb66d47f2fe619df71@www.novabbs.org>
 <vm3kf2$1t0s1$1@dont-email.me>
 <6248473300a9fc0fd964c635510f510d@www.novabbs.org>
 <TXfhP.642290$Uup4.301463@fx10.iad>
 <a0867899b693a1bc2579ec7cc25d676c@www.novabbs.org>
 <6DghP.566840$EYNf.141529@fx11.iad>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 14 Jan 2025 15:05:52 +0100 (CET)
Injection-Info: dont-email.me; posting-host="9951024a6f598bbfa9f09d3a2343eba8";
	logging-data="2565674"; mail-complaints-to="abuse@eternal-september.org";	posting-account="U2FsdGVkX1+kB8vGNZHTAcNXUszuB7tGbnPlPniFdOc="
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.11.0
Cancel-Lock: sha1:lexglEoEcwhd5o9g7/To7tzrj4I=
Content-Language: en-GB
In-Reply-To: <6DghP.566840$EYNf.141529@fx11.iad>
Bytes: 3144

On 13/01/2025 23:40, Scott Lurndal wrote:
> mitchalsup@aol.com (MitchAlsup1) writes:
>> On Mon, 13 Jan 2025 21:53:55 +0000, Scott Lurndal wrote:
>>
>>> mitchalsup@aol.com (MitchAlsup1) writes:
>>>> On Mon, 13 Jan 2025 18:02:10 +0000, Thomas Koenig wrote:
>>>>
>>>>> MitchAlsup1 <mitchalsup@aol.com> schrieb:
>>>>>
>>>>>> errno is an atrocity all by itself; single handedly preventing
>>>>>> direct use of SIN(), COS(), TAN(), ATAN(), exp(), ln(), pow()
>>>>>> as instructions.
>>>>>
>>>>> Fortunately, the C standard does not require errno to be set
>>>>> for these functions.  Apple, for example, does not do so.
>>>>
>>>> Nor will I.
>>>
>>> POSIX does, however, require errno to be set conditionally
>>> based on an application global variable 'math_errhandling'.
>>
>> The functions mentioned have the property of taking x as
>> any IEEE 754 number (including NaNs, infinities, denorms)
>> and produce a IEEE 754 number {NaNs, infinities, norms,
>> denorms}.
>>
>> But if POSIX wants to spend as many cycles setting errno
>> as performing the calculation, that is for POSIX to decide.
> 
> POSIX leaves it up to the programmer to decide.  If the
> programmer desires EDOM or ERANGE, they set the
> appropriate bit in math_errhandling before calling the
> sin et alia functions.
> 

You know POSIX better than I do, but AFAIK "math_errhandling" is a fixed 
value set by the implementation, usually as a macro.  Certainly with a 
quick check with gcc on Linux, I could not set the bits in math_errhandling.