The last time I looked into any clang-based backends, there were a bunch of fundamental assumptions that make LLVM really not a good starting point for a register-sparse 8-bit micro.
See
this thread discussing why the PIC16 backend was removed:
Jim Grosbach in that thread wrote:
An eight-bit, accumulator based, Harvard ISA is the Trifecta of Doom as far as LLVM is concerned, basically.
At least the 6502 gets these better than the 14-bit PICs:
1- sizeof (char *) = sizeof (char *()), and identical pointer values can only mean the same item
2- values can be juggled between A, X, and Y, and memory access can happen from any of them
I've heard that someone's writing a Sweet16 LLVM backend, which seems like a much more tenable idea.
Clang is also tricky because the types (signedness and number of bits) are
baked in by the C compiler when it compiles to the intermediate representation... including type promotion. For any machine where the "int" type isn't the native register width, C standard compliant type promotion is pretty reliably going to make things hurt.
Finally, I'd naïvely think that SDCC is in a fairly good position to grow 6502 support, but I'm not really clear why it hasn't grown it. Perhaps it has even less community interest.