Bruce, look at 
http://cellperformance.beyond3d.com/articles/2006/06/understanding-strict-aliasing.html
how aliasing works.

Olga

2012/2/29 ольга крыжановская <[email protected]>:
> Bruce, ISO C99 edition, section 6.5, paragraph 7 specifies that it is
> illegal (with exceptions) for pointers of different types to reference
> the same memory location. This helps the compiler to produce better
> and faster running code. If you turn strict aliasing off with
> -fno-strict-aliasing you will suffer a performance penalty with modern
> compilers, assuming your compiler still has such an option to disable
> strict aliasing. IMO the lack of strict aliasing is now, where C99 has
> become commonplace and C1X has been released, a major portability
> hazard which needs to be fixed.
>
> Olga
>
> 2012/2/29 Bruce Lilly <[email protected]>:
>> On Tue, 28 Feb 2012 23:59:30 +0100
>> ольга крыжановская <[email protected]> wrote:
>>
>>> Bruce, you have to pass CCFLAGS='-O3 -fstrict-aliasing
>>> -Wstrict-aliasing' to package make to see the aliasing warnings,
>>> -Wstrict-aliasing is not enabled by default.
>>
>> Why would you do so when compiling C (not C++)?
>>
>> "type-punned" has no defined meaning in any version of K&R's definitive
>> C Programming Language books, nor in any version of ANSI/ISO C standard
>> that I've seen.  "punned" is the past tense of the word "pun", which is
>> inapplicable to C programming.  It appears to be part of the bizarre
>> lingo associated with "C ploose ploose" jargon.
>
>
>
> --
>       ,   _                                    _   ,
>      { \/`o;====-    Olga Kryzhanovska   -====;o`\/ }
> .----'-/`-/     [email protected]   \-`\-'----.
>  `'-..-| /       http://twitter.com/fleyta     \ |-..-'`
>       /\/\     Solaris/BSD//C/C++ programmer   /\/\
>       `--`                                      `--`



-- 
      ,   _                                    _   ,
     { \/`o;====-    Olga Kryzhanovska   -====;o`\/ }
.----'-/`-/     [email protected]   \-`\-'----.
 `'-..-| /       http://twitter.com/fleyta     \ |-..-'`
      /\/\     Solaris/BSD//C/C++ programmer   /\/\
      `--`                                      `--`

_______________________________________________
ast-developers mailing list
[email protected]
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to