LLVM is several things together kinda of virtual machine/optimizing compiler, you have different frontends that take the input in a particular language an output the result in a intermediate language. This intermediate output can be run with the virtual machine, but also can be used to generate a standalone executable.
The problem with concurrency is that it just recently has become quite common. Although it was being used for a long time in scientific computing. So while is it know how to program a scientific calculation program to achieve great performance, it is another completely different thing to write a mail user agent/word processor that can be good at performance. Also most of the current OS were being designed with uniprocessor in mind, and while work with multicore processors they may not be fully prepared.
The benefit of LLVM with respect to concurrency is that you have an intermediate output, and if in the next years there are advances in concurrency, then with updating your interpreter you instantly gain those benefits, but this is not so easy if you have a standalone executable. So LLVM doesn't solve the concurrency problem per se but it leaves an open door for future enhancements.
Sure there're more possible advances for the hardware like quantum computers, genetics computers, etc. But we have to wait for them to become a reality.