Announcement

Collapse
No announcement yet.

GCC 12 Merges Initial Support For RISC-V's Bitmanip Extensions

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • GCC 12 Merges Initial Support For RISC-V's Bitmanip Extensions

    Phoronix: GCC 12 Merges Initial Support For RISC-V's Bitmanip Extensions

    Following the recent RISC-V Bitmanip work in Binutils, the GCC 12 compiler has now landed preliminary support for the RISC-V ISA's bit manipulation extension...

    https://www.phoronix.com/scan.php?pa...anip-Extension

  • #2
    "the GCC 12 compiler"

    Man, I must be really old. I remember running gcc-2.7.2.

    Comment


    • #3
      No intrinsics?

      Comment


      • #4
        Rome wasn't built in a day

        Comment


        • #5
          Originally posted by NateHubbard View Post
          "the GCC 12 compiler"

          Man, I must be really old. I remember running gcc-2.7.2.
          I remember building my Gentoo install with GCC 3. GCC 4 was around the corner, and promised to abstract language parsing from machine code generation.

          Comment


          • #6
            Originally posted by NateHubbard View Post
            I remember running gcc-2.7.2.
            I used gcc 2.3.something on my Amiga. It came on five or so Fred Fisk disks. Those days...

            Oh I just read Fred Fish died in 2007 :-(
            Last edited by George99; 25 October 2021, 12:14 PM.

            Comment


            • #7
              ... something something DOS Borland TurboC++ ... I really don't remember any more ... I barely remember the EGCS thing too.

              Comment


              • #8
                Originally posted by NateHubbard View Post
                "the GCC 12 compiler"

                Man, I must be really old. I remember running gcc-2.7.2.
                The major version numbering scheme switch to yearly, I think? 5.1 was released in April 2015. Each year after that, a new major version:

                Comment


                • #9
                  Originally posted by xorbe View Post
                  ... something something DOS Borland TurboC++ ... I really don't remember any more ... I barely remember the EGCS thing too.
                  By the time I properly appreciated what DJGPP even was, I was already doing 100% of development on Linux.

                  I did have occasion to use MinGW, about 15 years ago. It worked well, apart from the whole debugger debacle, due to COFF vs. whatever object format MS was using at the time.

                  Comment


                  • #10
                    The bitmanip proposal is something of a mixed bag.
                    • High-profile reductions: asm emitted for __builtin_clz() for example is currently 88 bytes with gcc 11.x; it would become just 4 with the new instruction. cpop: 86->4. ctz: 84->4. Kinda cool.
                    • Middle field: emission for what bclr would do is currently 24 bytes; it would become 4.
                    • Low-end: emission for what add.uw would do is currently 6 bytes; it would become 4. (It's still a 33% reduction, but... meh, to use up the instruction space for that?)

                    Comment

                    Working...
                    X