[Openmp-commits] [openmp] Add openmp support to System z (PR #66081)
Ilya Leoshkevich via Openmp-commits
openmp-commits at lists.llvm.org
Mon Oct 16 10:37:58 PDT 2023
iii-i wrote:
I'm slowly going through the failures in the openmp testsuite (the llvm testsuite is now green). So far I have a couple of fixups:
```
diff --git a/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp b/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
index 7a3a2a7e9013..6abb203f0c36 100644
--- a/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
+++ b/llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
@@ -226,6 +226,8 @@ void SystemZPassConfig::addIRPasses() {
addPass(createLoopDataPrefetchPass());
}
+ addPass(createAtomicExpandPass());
+
TargetPassConfig::addIRPasses();
}
diff --git a/openmp/runtime/src/kmp.h b/openmp/runtime/src/kmp.h
index 339e4ca4be6b..4397565e8f47 100644
--- a/openmp/runtime/src/kmp.h
+++ b/openmp/runtime/src/kmp.h
@@ -2456,12 +2456,21 @@ typedef struct kmp_depend_info {
union {
kmp_uint8 flag; // flag as an unsigned char
struct { // flag as a set of 8 bits
+#if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+ unsigned all : 1;
+ unsigned unused : 3;
+ unsigned set : 1;
+ unsigned mtx : 1;
+ unsigned out : 1;
+ unsigned in : 1;
+#else
unsigned in : 1;
unsigned out : 1;
unsigned mtx : 1;
unsigned set : 1;
unsigned unused : 3;
unsigned all : 1;
+#endif
} flags;
};
} kmp_depend_info_t;
```
and there are more to come (e.g., we need to support backchain unwinding via `__builtin_frame_address()` in order to make some of the tests happy). I'll post the updates here.
https://github.com/llvm/llvm-project/pull/66081
More information about the Openmp-commits
mailing list