• self@awful.systems
    link
    fedilink
    English
    arrow-up
    0
    ·
    15 hours ago

    Particular to if statements, C will do things push and pull values from the stack which takes a small but occasionally noticeable amount of cycles.

    holy fuck. llvm in shambles

    • bitofhope@awful.systems
      link
      fedilink
      English
      arrow-up
      0
      ·
      edit-2
      7 hours ago

      Meanwhile I’m reverse engineering some very much not performance sensitive video game binary patcher program some guy made a decade ago and Ghidra interprets a string splitting function as a no-op because MSVC decided calling conventions are a spook and made up a new one at link time. And it was right to do that.

      EDIT: Also me looking for audio data from another old video game, patiently waiting for my program to take about half an hour on my laptop every time I run it. Then I remember to add --release to cargo run and while the compilation takes three seconds longer, the runtime shrinks to about ten seconds. I wonder if the above guy ever tried adding -O2 to his CFLAGS?