@RichFelker Okay, but the bottom line is still: "your bugs => your problem; UB = optimisation opportunity". How about "-Oonly-known-good"?
-
-
Replying to @stephenrkell
@stephenrkell A safety/hardening-oriented -O level would probably be welcome if someone wants to develop it.1 reply 0 retweets 0 likes -
Replying to @RichFelker
@stephenrkell However lots of UB is nearly as dangerous even without optimizations that actively 'exploit' it. It's undefined for a reason.1 reply 0 retweets 0 likes -
Replying to @RichFelker
@RichFelker I'd say "many reasons", which is why this issue is so complex... (hmm, perhaps I should blog about this soonish).1 reply 0 retweets 0 likes -
Replying to @stephenrkell
@stephenrkell Also, if you write a proper optimizing compiler, you have to go out of your way NOT to "exploit UB" or else badly pessimize.3 replies 0 retweets 0 likes -
Replying to @RichFelker
@RichFelker That's the conventional wisdom. Problem is I'm a serial doubter. Do you know any experiments that measure this effect?1 reply 0 retweets 0 likes -
Replying to @stephenrkell
@stephenrkell I don't know how to measure the effect, but many historical aliasing/etc hacks I saw were obviously working around bad codegen1 reply 0 retweets 0 likes -
Replying to @RichFelker
@stephenrkell To quantify you'd need a tool to find such hacks in code from times when compilers were that bad, then guess motive by hand.1 reply 0 retweets 0 likes -
Replying to @RichFelker
@RichFelker Agreed it's hard to measure. Out of interest, would love to see any examples of said historical hacks....1 reply 0 retweets 0 likes -
Replying to @stephenrkell
@stephenrkell First example, my own strlen, which is pending either addition of proper may_alias attr or rewrite. http://git.musl-libc.org/cgit/musl/diff/src/string/strlen.c?id=571744447c23f91feb6439948f3a619aca850dfb …2 replies 0 retweets 0 likes
@stephenrkell GCC fails to vectorize in integer registers, can only vectorize on targets with explicit vector registers/operations.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.