The code is currently using the ambiguous instruction "sub sp, sp, w9, lsl #4". The ARM instruction manual says this isn't valid, and it's not clear whether it's supposed to mean uxtw or uxtx. LLVM used to accept this and treat it as uxtx, but now it rejects the construct.
It doesn't matter which form of extension we use here, since the high bits of the operand are zero anyway, so I arbitrarily choose uxtw, to preserve the register name.
See https://reviews.llvm.org/D60840 for the LLVM patch.
This is my first patch to the OpenMP runtime; not sure if I'm selecting appropriate reviewers.