[Cfp-interest 2768] Re: CFP review of NB comments on CD2 - 20230602

Jim Thomas jaswthomas at sbcglobal.net
Mon Jun 5 10:16:41 PDT 2023


Para 3 is a continuation of the example in para 2. I don’t think there is any normative content here, just guidance for optimization. This example is not formatted as an example, and I suspect there is other text in Annex F that might better be formatted as examples or notes. An item for investigation for the next revision?

- Jim Thomas

> On Jun 5, 2023, at 9:41 AM, Hans Boehm <boehm at acm.org> wrote:
> 
> 
> 
> On Mon, Jun 5, 2023 at 9:07 AM Jim Thomas <jaswthomas at sbcglobal.net <mailto:jaswthomas at sbcglobal.net>> wrote:
>> 
>> We don’t want to say that the floating-point environment must be precise at sequence points. That would disallow optimizations like code motion and common subexpression elimination that can be safely done between function calls.
>> 
>> - Jim Thomas
>> 
> +1
> 
> I think that technically "between" in "between function calls" needs to be defined in terms of "sequenced before". And making this precise seems both tricky and unnecessary. (The C++ standard got rid of "sequence points" long ago because none of us could define precisely enough what that wording means. I still can't. So I'm generally opposed to adding references to it.)
> 
> This text looks to me like it's a normative part of the standard. It doesn't look to me like it should be. Does the C standard have an easy way to make it non-normative? Presumably "between function calls" is really still much too strong, and really only an example? It only needs tobe "between function calls that might test exception flags"? But I'm not sure what this kind of negative statement means in normative text.
> 
> Hans

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.oakapple.net/pipermail/cfp-interest/attachments/20230605/76c99848/attachment.htm>


More information about the Cfp-interest mailing list