added patch for upstream llvm change