More precisely, it is licensed under GPLv3 + runtime exception with the result being pretty much LGPL. In the case of libgcc, for 99.9% of the users there is no difference between this license and BSD.
I don't quite follow your logic. The license is there to establish what others can do with your code. Contributors, as copyright holders, can do with the code whatever they please without any license.
What I am trying to say is that to me the user of libgcc or the LLVM version there is not difference between BSD and LGPL conditions.
Contributing to a project doesn't mean you get to ignore the license; if you submit a patch for readline, you still have to GPL your app that links to it.
The LLVM project isn't controlled by a single entity, but it does get a lot of code from "commercial" users, so those users chose a license that works well for them. (It ensures that any future contributions will be usable under an acceptable license.) Admittedly the LGPL would also be fine, but ... that's not what they picked.
It looks like compiler-rt is a replacement for only a small part of libgcc, It's just the functions you need to _run_ C programs. It doesn't include functions like printf.
And as for why they're doing it, it's to allow llvm work without a dependency on another project.