Signed overflow optimization hazards in the kernel
Posted Aug 16, 2012 22:48 UTC (Thu) by PaulMcKenney (subscriber, #9624)
[Link]
Understood. And when it was suggested within the C11 Standards committee that signed-integer overflow be given twos-complement semantics, the discussion was both emphatic and short. ;-)
Signed overflow optimization hazards in the kernel
Posted Aug 17, 2012 16:07 UTC (Fri) by josh (subscriber, #17465)
[Link]
What did the arguments against it say, other than "that would remove compiler optimization possibilities"?
Signed overflow optimization hazards in the kernel
Posted Aug 18, 2012 18:19 UTC (Sat) by PaulMcKenney (subscriber, #9624)
[Link]
One objection was that there really are still non-twos-complement machines in common use. As was noted by the comment to this article discussing saturating adders, where 32767+1==32767. But this would be addressed by "implementation defined" rather than "undefined".
Another objection was that there are systems still in common use that trap on signed integer overflow. If the C standard required wrapping, compilers for such systems would require special edge-case checks on pretty much any signed integer operation.
And there was of course also the objection that signed integer overflow always has been undefined. ;-)