Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. working on gcc is killing me, haha

working on gcc is killing me, haha

Scheduled Pinned Locked Moved Uncategorized
14 Posts 9 Posters 1 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • swetland@chaos.socialS swetland@chaos.social

    @thephd Do you also work on llvm? If so, does it usher you toward death at a greater or lesser rate?

    thephd@pony.socialT This user is from outside of this forum
    thephd@pony.socialT This user is from outside of this forum
    thephd@pony.social
    wrote last edited by
    #4

    @swetland I finished working on LLVM already. It was monumentally easier, but only because all of my usual type-based refactoring techniques worked. GCC is a lot more type-sloppy (everything is either a tree or an rtx) and so it's impossible to trace the effect of things at compile-time using types or signatures. You just have to stick data in the machine and observe GCC chug away at it in a debugger or with verbose prints to track down what is going on.

    archiloque@felin.socialA david_chisnall@infosec.exchangeD 2 Replies Last reply
    0
    • thephd@pony.socialT thephd@pony.social

      working on gcc is killing me, haha

      thephd@pony.socialT This user is from outside of this forum
      thephd@pony.socialT This user is from outside of this forum
      thephd@pony.social
      wrote last edited by
      #5

      if you EVER hear me say "I think I'll implement this in GCC for fun" ever, I want you to slap the shit out of me. Just let loose. Doesn't matter if I lose a tooth or two, if that thought comes into my head again I deserve it.

      thephd@pony.socialT matus_chochlik@mastodon.onlineM 2 Replies Last reply
      0
      • thephd@pony.socialT thephd@pony.social

        if you EVER hear me say "I think I'll implement this in GCC for fun" ever, I want you to slap the shit out of me. Just let loose. Doesn't matter if I lose a tooth or two, if that thought comes into my head again I deserve it.

        thephd@pony.socialT This user is from outside of this forum
        thephd@pony.socialT This user is from outside of this forum
        thephd@pony.social
        wrote last edited by
        #6

        Do not let me do this again unless I am being paid real money.

        markuswerle@nrw.socialM sol_hsa@mastodon.gamedev.placeS 2 Replies Last reply
        0
        • thephd@pony.socialT thephd@pony.social

          if you EVER hear me say "I think I'll implement this in GCC for fun" ever, I want you to slap the shit out of me. Just let loose. Doesn't matter if I lose a tooth or two, if that thought comes into my head again I deserve it.

          matus_chochlik@mastodon.onlineM This user is from outside of this forum
          matus_chochlik@mastodon.onlineM This user is from outside of this forum
          matus_chochlik@mastodon.online
          wrote last edited by
          #7

          @thephd this sounds somewhat familiar.. 😛

          1 Reply Last reply
          0
          • thephd@pony.socialT thephd@pony.social

            Do not let me do this again unless I am being paid real money.

            markuswerle@nrw.socialM This user is from outside of this forum
            markuswerle@nrw.socialM This user is from outside of this forum
            markuswerle@nrw.social
            wrote last edited by
            #8

            @thephd one or two more ICEs are fine with us.

            1 Reply Last reply
            0
            • thephd@pony.socialT thephd@pony.social

              Do not let me do this again unless I am being paid real money.

              sol_hsa@mastodon.gamedev.placeS This user is from outside of this forum
              sol_hsa@mastodon.gamedev.placeS This user is from outside of this forum
              sol_hsa@mastodon.gamedev.place
              wrote last edited by
              #9

              @thephd Pieces of eight?

              1 Reply Last reply
              0
              • thephd@pony.socialT thephd@pony.social

                @swetland I finished working on LLVM already. It was monumentally easier, but only because all of my usual type-based refactoring techniques worked. GCC is a lot more type-sloppy (everything is either a tree or an rtx) and so it's impossible to trace the effect of things at compile-time using types or signatures. You just have to stick data in the machine and observe GCC chug away at it in a debugger or with verbose prints to track down what is going on.

                archiloque@felin.socialA This user is from outside of this forum
                archiloque@felin.socialA This user is from outside of this forum
                archiloque@felin.social
                wrote last edited by
                #10

                @thephd @swetland is it mandatory to provide two implementations by yourself?

                thephd@pony.socialT 1 Reply Last reply
                0
                • archiloque@felin.socialA archiloque@felin.social

                  @thephd @swetland is it mandatory to provide two implementations by yourself?

                  thephd@pony.socialT This user is from outside of this forum
                  thephd@pony.socialT This user is from outside of this forum
                  thephd@pony.social
                  wrote last edited by
                  #11

                  @archiloque No. But the rules for proposals are different for me, unlike all of my colleagues.

                  1 Reply Last reply
                  0
                  • thephd@pony.socialT thephd@pony.social

                    @swetland I finished working on LLVM already. It was monumentally easier, but only because all of my usual type-based refactoring techniques worked. GCC is a lot more type-sloppy (everything is either a tree or an rtx) and so it's impossible to trace the effect of things at compile-time using types or signatures. You just have to stick data in the machine and observe GCC chug away at it in a debugger or with verbose prints to track down what is going on.

                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                    david_chisnall@infosec.exchangeD This user is from outside of this forum
                    david_chisnall@infosec.exchange
                    wrote last edited by
                    #12

                    @thephd @swetland

                    A little over 20 years ago, I wrote a replacement for the GCC Objective-C runtime that supported more modern features. People tried to persuade me to add support for the language features into FSF GCC (they were already in Apple GCC and ‘just’ needed porting). At the time, clang had no support for Objective-C code generation, though it could build a(n almost correct) Objective-C AST.

                    After a week of failing to figure out what the GCC code was doing, I added code generation support for Objective-C to clang. Support for Objective-C on non-Apple platforms has roughly kept parity since then in clang (we actually shipped blocks support six months before their public release) and has gained support for things like SEH-compatible exceptions on Windows. GCC remains stuck on a turn-of-the-millennium dialect of Objective-C.

                    P 1 Reply Last reply
                    0
                    • david_chisnall@infosec.exchangeD david_chisnall@infosec.exchange

                      @thephd @swetland

                      A little over 20 years ago, I wrote a replacement for the GCC Objective-C runtime that supported more modern features. People tried to persuade me to add support for the language features into FSF GCC (they were already in Apple GCC and ‘just’ needed porting). At the time, clang had no support for Objective-C code generation, though it could build a(n almost correct) Objective-C AST.

                      After a week of failing to figure out what the GCC code was doing, I added code generation support for Objective-C to clang. Support for Objective-C on non-Apple platforms has roughly kept parity since then in clang (we actually shipped blocks support six months before their public release) and has gained support for things like SEH-compatible exceptions on Windows. GCC remains stuck on a turn-of-the-millennium dialect of Objective-C.

                      P This user is from outside of this forum
                      P This user is from outside of this forum
                      pinskia@hachyderm.io
                      wrote last edited by
                      #13

                      @david_chisnall @thephd @swetland
                      The objective c frontend in gcc has always been bad. I blame next/apple for that mess.

                      david_chisnall@infosec.exchangeD 1 Reply Last reply
                      0
                      • P pinskia@hachyderm.io

                        @david_chisnall @thephd @swetland
                        The objective c frontend in gcc has always been bad. I blame next/apple for that mess.

                        david_chisnall@infosec.exchangeD This user is from outside of this forum
                        david_chisnall@infosec.exchangeD This user is from outside of this forum
                        david_chisnall@infosec.exchange
                        wrote last edited by
                        #14

                        @pinskia @thephd @swetland

                        I think RMS gets a lot of the blame. If he hadn’t been so keen to get a win for GPL enforcement, the GCC team could have just rejected it as terrible code and never merged it, and maybe added a properly engineered version later.

                        1 Reply Last reply
                        1
                        0
                        • R relay@relay.infosec.exchange shared this topic
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                        • Login

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • World
                        • Users
                        • Groups