Page MenuHomeFreeBSD

base llvm: Enable OpenMP on aarch64
Needs ReviewPublic

Authored by greg_unrelenting.technology on Aug 6 2019, 1:25 PM.

Details

Reviewers
None
Group Reviewers
arm64
Contributor Reviews (base)
Summary

It just works™

Feel free to upstream the patch to LLVM (probably with LINUX||FREEBSD instead of removing the OS check completely though).

Diff Detail

Repository
rS FreeBSD src repository
Lint
Lint Skipped
Unit
Unit Tests Skipped

Event Timeline

emaste added inline comments.Aug 16 2019, 4:09 PM
contrib/openmp/runtime/src/kmp.h
3469

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?

contrib/openmp/runtime/src/kmp.h
3469

The 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.

This is just another "upstream only considered Linux, we need to be included in the same way as Linux" case.

But I mean this was already the case for the presumably-working amd64/i386 cases?

This is just another "upstream only considered Linux, we need to be included in the same way as Linux" case.

But I mean this was already the case for the presumably-working amd64/i386 cases?

FreeBSD/amd64 works anyway because va_list *is* a pointer there

Rebased on top of the powerpc64 change