Changeset View
Changeset View
Standalone View
Standalone View
contrib/openmp/runtime/src/kmp.h
Show First 20 Lines • Show All 3,542 Lines • ▼ Show 20 Lines | fork_context_gnu, /**< Called from GNU generated code, so must not invoke the | ||||
microtask internally. */ | microtask internally. */ | ||||
fork_context_intel, /**< Called from Intel generated code. */ | fork_context_intel, /**< Called from Intel generated code. */ | ||||
fork_context_last | fork_context_last | ||||
}; | }; | ||||
extern int __kmp_fork_call(ident_t *loc, int gtid, | extern int __kmp_fork_call(ident_t *loc, int gtid, | ||||
enum fork_context_e fork_context, kmp_int32 argc, | enum fork_context_e fork_context, kmp_int32 argc, | ||||
microtask_t microtask, launch_t invoker, | microtask_t microtask, launch_t invoker, | ||||
/* TODO: revert workaround for Intel(R) 64 tracker #96 */ | /* TODO: revert workaround for Intel(R) 64 tracker #96 */ | ||||
#if (KMP_ARCH_ARM || KMP_ARCH_X86_64 || KMP_ARCH_AARCH64) && KMP_OS_LINUX | #if (KMP_ARCH_ARM || KMP_ARCH_X86_64 || KMP_ARCH_AARCH64) | ||||
emaste: Came in from "aarch64 port sent by C. Bergstrom"
http://llvm.org/viewvc/llvm-project? | |||||
val_packett.coolUnsubmitted Done Inline ActionsThe va_list usage in the else cases (which treats it as if it is already a pointer) does not compile on FreeBSD/aarch64, it needs to be in the same case as Linux/(aarch64|amd64|arm), which treats it as opaque. This is just another "upstream only considered Linux, we need to be included in the same way as Linux" case. val_packett.cool: The `va_list` usage in the `else` cases (which treats it as if it is already a pointer) does… | |||||
Not Done Inline ActionsThis would typically not be acceptable for upstream. The condition should at least be rewritten as: #if (KMP_ARCH_ARM || KMP_ARCH_X86_64 || KMP_ARCH_AARCH64) && (KMP_OS_LINUX | KMP_OS_FREEBSD) It should probably be defining something like KMP_HAVE_WEIRD_VA_LIST so the conditional expression does not have to be changed in many places. dim: This would typically not be acceptable for upstream. The condition should at least be rewritten… | |||||
va_list *ap | va_list *ap | ||||
#else | #else | ||||
va_list ap | va_list ap | ||||
#endif | #endif | ||||
); | ); | ||||
extern void __kmp_join_call(ident_t *loc, int gtid | extern void __kmp_join_call(ident_t *loc, int gtid | ||||
#if OMPT_SUPPORT | #if OMPT_SUPPORT | ||||
▲ Show 20 Lines • Show All 460 Lines • Show Last 20 Lines |
Came in from "aarch64 port sent by C. Bergstrom"
http://llvm.org/viewvc/llvm-project?view=revision&revision=225792
but this just added KMP_AARCH_64 to the existing ARM/X86_64 cases, KMP_OS_LINUX was already there
is there something FreeBSD-aarch64-specific here?