Backport LLVM patch to fix LLVM build on GCC 11
GCC 11 has changed header dependencies again, so the build of LLVM
fails because <limits> wasn't being included when it should be. This
is already fixed upstream in LLVM 12.
(cherry picked from commit 4935775fdc43e2b0bb8e88edc98b838bcc296d29)