Messages in this thread | | | Date | Thu, 10 Oct 2013 17:04:16 +0200 | From | Ingo Molnar <> | Subject | Re: [PATCH, -v2] compiler/gcc4: Add quirk for 'asm goto' miscompilation bug |
| |
* Peter Zijlstra <peterz@infradead.org> wrote:
> > So for >= 4.8.3 just assume no workaround is needed, otherwise scan > > assembly. > > Right, tedious and error prone it is.. :-) > > Would it make sense to create something whereby GCC can tell us about > these things? Maybe something like: > > __builtin_bug_fixed(58670) > > Which would default return 0, and only return 1 when its a known number. > > But yes, I also see why you'd not want to do that. I suppose all I'm > saying is it would be nice to be able to detect some arbitrary issue > being fixed.
Basically not a monolithic 1-dimensional feature value but a more finegrained multi-dimensional feature vector would be nice.
It could be used not just for bugs but for all regular features as well, as they are added.
Something like:
__builtin_feature(asm_goto)
would return 1 for a basic asm goto implementation and 0 for unknown feature strings. Any individual bug, if applications are affected by it, would then would be discoverable:
__builtin_feature(asm_goto_bug_58670_fixed)
(or a fully symbolic name would suffice as well.) On old GCC this would return 1, on anything 4.8.2 and higher it would return 1.
Thanks,
Ingo
| |