I am using GMP[https://gmplib.org] for implementation of cryptographic algorithms, especially for big integer/finite field arithmetic. However, I got the comment that GMP is not constant time, therefore it is not a good choice in for cryptographic implementations. But I wonder
1. Why GMP is not constant time?
2. And what makes the difference than any constant time bignum library?
3. Is there any general purpose constant time big number library for C/C++ especially targeted for Cryptographic use?
My understanding is addition, subtraction, multiplication, and division implemented in C do not depends on the size of the input. Therefore, such operations on any platform are constant time. Now it seems I'm completely wrong.