Fixed __kmpc_get_target_offload() to call library initialization.
authorAndrey Churbanov <Andrey.Churbanov@intel.com>
Thu, 22 Mar 2018 18:51:51 +0000 (18:51 +0000)
committerAndrey Churbanov <Andrey.Churbanov@intel.com>
Thu, 22 Mar 2018 18:51:51 +0000 (18:51 +0000)
Differential Revision: https://reviews.llvm.org/D44793

llvm-svn: 328228

openmp/runtime/src/kmp_csupport.cpp

index dbf2f995a78559d831288c0ff9f0e7015cb74f09..61a8c89fdf11d6f2ee24dc355cf4dc6d3ca2fe9f 100644 (file)
@@ -4066,7 +4066,12 @@ void __kmpc_doacross_fini(ident_t *loc, int gtid) {
 #endif
 
 #if OMP_50_ENABLED
-int __kmpc_get_target_offload(void) { return __kmp_target_offload; }
+int __kmpc_get_target_offload(void) {
+  if (!__kmp_init_serial) {
+    __kmp_serial_initialize();
+  }
+  return __kmp_target_offload;
+}
 #endif // OMP_50_ENABLED
 
 // end of file //