Index: contrib/openmp/runtime/src/kmp.h =================================================================== --- contrib/openmp/runtime/src/kmp.h +++ contrib/openmp/runtime/src/kmp.h @@ -3466,7 +3466,7 @@ enum fork_context_e fork_context, kmp_int32 argc, microtask_t microtask, launch_t invoker, /* 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) va_list *ap #else va_list ap Index: contrib/openmp/runtime/src/kmp_csupport.cpp =================================================================== --- contrib/openmp/runtime/src/kmp_csupport.cpp +++ contrib/openmp/runtime/src/kmp_csupport.cpp @@ -312,7 +312,7 @@ VOLATILE_CAST(microtask_t) microtask, // "wrapped" task VOLATILE_CAST(launch_t) __kmp_invoke_task_func, /* TODO: revert workaround for Intel(R) 64 tracker #96 */ -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) &ap #else ap @@ -415,7 +415,7 @@ VOLATILE_CAST(microtask_t) __kmp_teams_master, // "wrapped" task VOLATILE_CAST(launch_t) __kmp_invoke_teams_master, -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) &ap #else ap Index: contrib/openmp/runtime/src/kmp_gsupport.cpp =================================================================== --- contrib/openmp/runtime/src/kmp_gsupport.cpp +++ contrib/openmp/runtime/src/kmp_gsupport.cpp @@ -377,7 +377,7 @@ rc = __kmp_fork_call(loc, gtid, fork_context_gnu, argc, wrapper, __kmp_invoke_task_func, -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) &ap #else ap Index: contrib/openmp/runtime/src/kmp_runtime.cpp =================================================================== --- contrib/openmp/runtime/src/kmp_runtime.cpp +++ contrib/openmp/runtime/src/kmp_runtime.cpp @@ -1390,7 +1390,7 @@ enum fork_context_e call_context, // Intel, GNU, ... kmp_int32 argc, microtask_t microtask, launch_t invoker, /* TODO: revert workaround for Intel(R) 64 tracker #96 */ -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) va_list *ap #else va_list ap @@ -1502,7 +1502,7 @@ argv = (void **)parent_team->t.t_argv; for (i = argc - 1; i >= 0; --i) /* TODO: revert workaround for Intel(R) 64 tracker #96 */ -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) *argv++ = va_arg(*ap, void *); #else *argv++ = va_arg(ap, void *); @@ -1785,7 +1785,7 @@ if (ap) { for (i = argc - 1; i >= 0; --i) // TODO: revert workaround for Intel(R) 64 tracker #96 -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) *argv++ = va_arg(*ap, void *); #else *argv++ = va_arg(ap, void *); @@ -1804,7 +1804,7 @@ argv = args; for (i = argc - 1; i >= 0; --i) // TODO: revert workaround for Intel(R) 64 tracker #96 -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) *argv++ = va_arg(*ap, void *); #else *argv++ = va_arg(ap, void *); @@ -2091,7 +2091,7 @@ if (ap) { for (i = argc - 1; i >= 0; --i) { // TODO: revert workaround for Intel(R) 64 tracker #96 -#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) && KMP_OS_LINUX +#if (KMP_ARCH_X86_64 || KMP_ARCH_ARM || KMP_ARCH_AARCH64) void *new_argv = va_arg(*ap, void *); #else void *new_argv = va_arg(ap, void *); Index: share/mk/src.opts.mk =================================================================== --- share/mk/src.opts.mk +++ share/mk/src.opts.mk @@ -410,7 +410,7 @@ .endif .if ${COMPILER_FEATURES:Mc++11} && \ - (${__T} == "amd64" || ${__T} == "i386" || ${__T} == "powerpc64") + (${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "i386" || ${__T} == "powerpc64") __DEFAULT_YES_OPTIONS+=OPENMP .else __DEFAULT_NO_OPTIONS+=OPENMP