> But the atomic functions don't do that. This is wrong. It's not mentioned where they do it or not, because it's out of scope of atomics how the function passes arguments and how it returns them. All that is mentioned is that for naturally-aligned type N there might be a call generated to routine __atomic_X_N, and that's all. And this routine, indeed, will return the result as other routines generally do. But it has nothing to do with the "is it really the same type?" debates. An implementation can even inline the code of these "optimized routines", and most implementations do, indeed. Other uses, which don't fall into "optimized" category, indeed can cause the compiler to generate __atomic_X call instead of __atomic_X_N call.
_______________________________________________ Tinycc-devel mailing list Tinycc-devel@nongnu.org https://lists.nongnu.org/mailman/listinfo/tinycc-devel