[HN Gopher] GCC 13 Released
       ___________________________________________________________________
        
       GCC 13 Released
        
       Author : boris
       Score  : 133 points
       Date   : 2023-04-27 10:06 UTC (12 hours ago)
        
 (HTM) web link (gcc.gnu.org)
 (TXT) w3m dump (gcc.gnu.org)
        
       | Night_Thastus wrote:
       | >-Ofast, -ffast-math and -funsafe-math-optimizations will no
       | longer add startup code to alter the floating-point environment
       | when producing a shared object with -shared.
       | 
       | Well, that's a relief. Definitely won't fix anything already
       | built, but it's a nice step in the right direction. The idea of
       | finding out that a shared library is breaking unrelated code is a
       | scary proposition.
        
         | amluto wrote:
         | Wow! That's my bug report from just over 10 years ago :)
         | 
         | https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55522
        
           | randyrand wrote:
           | Bugs that take this long to fix are surreal. The bugs will
           | outlast us.
        
         | legobmw99 wrote:
         | This was an issue in the Python packaging ecosystem recently:
         | https://moyix.blogspot.com/2022/09/someones-been-messing-wit...
        
         | jahnu wrote:
         | Audio people will be happy
        
       | boywitharupee wrote:
       | I'm still waiting for #embed
        
       | einpoklum wrote:
       | Somewhat-opinionated tl;dr:
       | 
       | * C23 features
       | 
       | * C++23 features
       | 
       | * OpenMP work, including v5 / 5.1
       | 
       | * Support for more AArch64, arm CPUs
       | 
       | * Support for more Intel CPUs and ISA extensions (man, there are
       | so many of those...)
       | 
       | * More static analyzer checks
        
       | omoikane wrote:
       | > -Wxor-used-as-pow
       | 
       | This seems to only trigger in limited circumstances, one of my
       | favorite accidentally true expression is still warning-free:
       | printf("%d\n", 2^5);  // Warning here.              assert((3^2)
       | + (4^2) == (5^2));  // No warnings.
       | 
       | https://gcc.godbolt.org/z/4GqdEMfPb
        
         | Y_Y wrote:
         | Excellent. Now I'm wondering if Fermat's Last Theorem has a
         | bitwise analogue.
        
           | Someone wrote:
           | > Now I'm wondering if Fermat's Last Theorem has a bitwise
           | analogue.
           | 
           | It hasn't in this sense. The _^n_ operator flips the 'one'
           | bits in _n_ in its argument, so for any _n_ , we have
           | a = a^n^n
           | 
           | So, for all _a_ and _b_ ,                 a^n + b^n = ((a^n +
           | b^n)^n)^n
           | 
           | that makes                 c = (a^n + b^n)^n
           | 
           | a solution to                 a^n + b^n = c^n
           | 
           | and that means we can find a _c_ for every _n_ , _a_ and _b_.
        
           | kps wrote:
           | Bitwise multiplication is bitwise 'and', so exponentiation
           | (repeated multiplication) is the identity, so an+bn=cn iff
           | a+b=c. I have a truly remarkable proof of this, but my
           | filesystem is full.
        
         | michaelhoffman wrote:
         | My understanding is it only triggers when the left side is 2 or
         | 10.
        
           | ape4 wrote:
           | That's quite specific
        
       | shihab wrote:
       | Can anyone please share their experience with Openmp offload? In
       | terms of performance improvement observed, how much effort you
       | had to put in, comparison with any other gpgpu paradigm etc.
       | 
       | I'm just getting started with it. My _impression_ is that this
       | isn't quite mature yet. On a toy example I was working on, I had
       | trouble beating host only Openmp performance. Cuda thrust was
       | about 5 times faster, while taking about 5x less effort. Just a
       | data point.
        
       | cassepipe wrote:
       | " -fanalyzer is still only suitable for analyzing C code. In
       | particular, using it on C++ is unlikely to give meaningful
       | output. " Not this time, maybe next time ?
       | 
       | It's a pleasure to have it for C still
        
       ___________________________________________________________________
       (page generated 2023-04-27 23:01 UTC)