mirror of
https://github.com/intel/llvm.git
synced 2026-02-01 08:56:15 +08:00
[OpenMP][OMPT] Fix building with OMPT disabled after 6d3b81664a
This commit is contained in:
@@ -109,6 +109,26 @@ inline void ompt_set_thread_state(kmp_info_t *thread, ompt_state_t state) {
|
||||
inline const char *ompt_get_runtime_version() {
|
||||
return &__kmp_version_lib_ver[KMP_VERSION_MAGIC_LEN];
|
||||
}
|
||||
|
||||
class OmptReturnAddressGuard {
|
||||
private:
|
||||
bool SetAddress{false};
|
||||
int Gtid;
|
||||
|
||||
public:
|
||||
OmptReturnAddressGuard(int Gtid, void *ReturnAddress) : Gtid(Gtid) {
|
||||
if (ompt_enabled.enabled && Gtid >= 0 && __kmp_threads[Gtid] &&
|
||||
!__kmp_threads[Gtid]->th.ompt_thread_info.return_address) {
|
||||
SetAddress = true;
|
||||
__kmp_threads[Gtid]->th.ompt_thread_info.return_address = ReturnAddress;
|
||||
}
|
||||
}
|
||||
~OmptReturnAddressGuard() {
|
||||
if (SetAddress)
|
||||
__kmp_threads[Gtid]->th.ompt_thread_info.return_address = NULL;
|
||||
}
|
||||
};
|
||||
|
||||
#endif // OMPT_SUPPORT
|
||||
|
||||
// macros providing the OMPT callbacks for reduction clause
|
||||
@@ -135,23 +155,4 @@ inline const char *ompt_get_runtime_version() {
|
||||
#define OMPT_REDUCTION_END
|
||||
#endif // ! OMPT_SUPPORT && OMPT_OPTIONAL
|
||||
|
||||
class OmptReturnAddressGuard {
|
||||
private:
|
||||
bool SetAddress{false};
|
||||
int Gtid;
|
||||
|
||||
public:
|
||||
OmptReturnAddressGuard(int Gtid, void *ReturnAddress) : Gtid(Gtid) {
|
||||
if (ompt_enabled.enabled && Gtid >= 0 && __kmp_threads[Gtid] &&
|
||||
!__kmp_threads[Gtid]->th.ompt_thread_info.return_address) {
|
||||
SetAddress = true;
|
||||
__kmp_threads[Gtid]->th.ompt_thread_info.return_address = ReturnAddress;
|
||||
}
|
||||
}
|
||||
~OmptReturnAddressGuard() {
|
||||
if (SetAddress)
|
||||
__kmp_threads[Gtid]->th.ompt_thread_info.return_address = NULL;
|
||||
}
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user