hash of mpz_t and mpq_t
bodrato at mail.dm.unipi.it
Thu Jun 17 19:36:01 UTC 2021
Il 2021-06-17 18:05 Hans Åberg ha scritto:
>> On 17 Jun 2021, at 17:21, Marco Bodrato <bodrato at mail.dm.unipi.it>
>> You are right, one should use mpz_sgn(X) < 0 ? -mpz_size(X) :
>> mpz_size(X) , instead.
>> It might seem too complex, …
> Conditions can be expensive on piped CPUs.
If for a given target a branch is expensive, then the compiler can use a
conditional operation, or a mask, or... any other reasonable solution
for that specific target.
This is exactly the work I expect from an optimising compiler.
>> but a modern gcc is able to understand what we mean and compile the
>> right thing.
> Even though modern compilers are pretty aggressive in optimizations,
> it would be better to having rely on that.
May I suggest that relying on good compilers can be more "future-proof"
than relying on undocumented internals :-)
More information about the gmp-discuss