You modifications to the Imath patch aren't working for me trying to do a mock build so here's my untested patch for LLVM 13:

$ cat osl-llvm13.patch
Index: OpenShadingLanguage-Release-1.11.14.2/src/liboslexec/llvm_util.cpp
===================================================================
--- OpenShadingLanguage-Release-1.11.14.2.orig/src/liboslexec/llvm_util.cpp
+++ OpenShadingLanguage-Release-1.11.14.2/src/liboslexec/llvm_util.cpp
@@ -1228,7 +1228,9 @@ LLVM_Util::make_jit_execengine (std::str
 
     options.NoZerosInBSS = false;
     options.GuaranteedTailCallOpt = false;
+#if LLVM_VERSION < 13
     options.StackAlignmentOverride = 0;
+#endif
     options.FunctionSections = true;
     options.UseInitArray = false;
     options.FloatABIType = llvm::FloatABI::Default;
@@ -2989,7 +2991,7 @@ void
 LLVM_Util::write_bitcode_file (const char *filename, std::string *err)
 {
     std::error_code local_error;
-    llvm::raw_fd_ostream out (filename, local_error, llvm::sys::fs::F_None);
+    llvm::raw_fd_ostream out (filename, local_error, llvm::sys::fs::OF_None);
     if (! out.has_error()) {
         llvm::WriteBitcodeToFile (*module(), out);
         if (err && local_error)
@@ -3051,7 +3053,9 @@ LLVM_Util::ptx_compile_group (llvm::Modu
     options.AllowFPOpFusion                        = llvm::FPOpFusion::Fast;
     options.NoZerosInBSS                           = 0;
     options.GuaranteedTailCallOpt                  = 0;
+#if LLVM_VERSION < 13
     options.StackAlignmentOverride                 = 0;
+#endif
     options.UseInitArray                           = 0;
 
     llvm::TargetMachine* target_machine = llvm_target->createTargetMachine(


Thanks,
Richard