On Tue, Jun 11, 2013 at 8:01 AM, Justin Bogner <[email protected]>wrote:
> Joerg Sonnenberg wrote: > > On Tue, Jun 11, 2013 at 12:18:55AM -0600, Justin Bogner wrote: > >> The clz, ctz, and popcount builtins are trivial to add constant folded > >> implementations of, and gcc accepts them in const contexts. > > > > Can you test the constant folding with > > char foo[f(x) == val ? 1 : -1]; > > > > or so? > > Do you mean something like this? A testcase which is less likely to pass by accident would be better (for instance, your popcount tests would succeed if the builtin just returned its argument, and tests with a '1' in the sign bit would be useful). You should also ensure that __builtin_clz(0) and __builtin_ctz(0) are not treated as constants.
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
