4 ms·
I still think you're missing the point. GCC indeed didn't invent "inline assembly as a string", no. GCC invented "constraint metalanguage as the foundation fo
by newacct583 6y ago
I still think you're missing the point. GCC indeed didn't invent "inline assembly as a string", no.
GCC invented "constraint metalanguage as the foundation for inline assembly generation", which is the model here that enables one compiler and one syntax to work the same way for basically every architecture over decades. Modelling the interior of the assembly code as a black box (which in this implementation means "string") is just a side effect of this important design choice.
Again, the stuff you're imagining isn't a general purpose assembly language model, it's an x86-specific hack that works only on the specific compilers and architectures for which it was targeted.
- pjmlp 6y agoExcept that compilers with inline Assembly also don't have dumb backends that just dump Assembly for as, like on UNIX. They interact with the backend. They weren't specific of x86, although I mentioned only PC, they were available across all 8 and 16 bit home computers and several embedded targets support it as well.