[sdiy] Some Audio DSP prototypes

Mike Bryant mbryant at futurehorizons.com
Tue Apr 19 19:29:11 CEST 2022

> GCC is the industry standard, and everything else is based off that.  Whatever you're using, it'll be bog standard GCC inside.

That was years ago.  LLVM is the industry standard nowadays, used and paid for by Apple, ARM, IBM, Microsoft, HP, Google, Amazon and all the other big players and nothing inside it is based on gcc.  As it's open source GNU tries to copy some of their improvements into gcc but they are always 1-2 generations behind and are borked by the particular way they do the first stage of compilation.   Some smaller SMEs still insist code produced is acceptable to either compiler so they can choose the best performing version, but most larger companies got rid of gcc years ago so they can optimise to LLVM properly.  Everything from Xcode to Android uses it, though many Linux builders still use gcc for seemingly religious reasons as LLVM always produces a faster build.

A major exception that didn't is STM whose CubeIDE is still based on GNU, but that's so awful you'd have to be desperate to use it.

I'm doing complex DSP work that really needs STM32H750s so takes a lot of optimisation to even run on multiple RP2040s.  So at the moment I compile critical parts with ARM compiler and then cut, edit and paste the assembly output into the .cpp file that gcc then uses with all optimisations turned off to produce the RP2040 binary file.  Almost impossible to debug but the only way to achieve the performance needed.

And using Visual Studio doesn't mean MSoft own your code.  That's a silly story that did the rounds years ago.

-----Original Message-----
From: Synth-diy [mailto:synth-diy-bounces at synth-diy.org] On Behalf Of Gordonjcp
Sent: 19 April 2022 17:55
To: synth-diy at synth-diy.org
Subject: Re: [sdiy] Some Audio DSP prototypes

On Tue, Apr 19, 2022 at 04:40:56PM +0000, Mike Bryant wrote:
> Sorry Gordon, but you are incorrect.  Most embedded development by SMEs up to large multinationals is performed on Windows machines, as these machines easily link in to corporate networks and hence are backed up and maintained by the IT department which is usually expert only on Windows.    Indeed some companies have policies in place strictly prohibiting the use of MacOS or Linux even to access email when working from home.

Which is why you end up in the idiotic situation of being unable to work on your own product any more because someone has decided they no longer wish to support a program you use.  Even better, everything you do is owned by Microsoft, if you check the EULA - you *did* check the EULA, right?

> As for the RP2040 toolchain working perfectly well, it does if you regard the use of a second-rate compiler, of CMake to control builds, and of customised versions of other tools as being 'perfectly well'.  For hobbyists it's fine, but for production software it's not even close to what is needed.

GCC is the industry standard, and everything else is based off that.  Whatever you're using, it'll be bog standard GCC inside.

What exactly are you using that requires really weirdly specific tools?


Synth-diy mailing list
Synth-diy at synth-diy.org
Selling or trading? Use marketplace at synth-diy.org

More information about the Synth-diy mailing list