https://llvm.org/bugs/show_bug.cgi?id=31300

            Bug ID: 31300
           Summary: Pass arch-specific library name to the linker instead
                    of just '-lomp', '-lgomp' etc.
           Product: OpenMP
           Version: unspecified
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: Clang Compiler Support
          Assignee: unassignedclangb...@nondot.org
          Reporter: pir...@google.com
                CC: danalb...@google.com, llvm-bugs@lists.llvm.org,
                    srhi...@google.com
    Classification: Unclassified

Currently, '-fopenmp' just gets translated to the corresponding runtime library
(-lomp, -lgomp, -lipmp5) during the link step.  However, this precludes a
multilib toolchain from finding the right library based on the target
architecture without extra support from the build system.  The sanitizers, for
instance, use libclang_rt.<sanitizer>-<arch>.{so,a}.

To do something similar for OpenMP, we need to
1. change the driver to pass the extended name to the linker.
2. change the CMake build rules to use the extended name instead of libomp.so.

My questions:
1. What is the preferred "full" name?  libomp-<arch>.so sounds reasonable to
me.
2. Is the existing behavior preferable to avoid breaking existing code or to
support OpenMP runtimes from outside of this project?  If so, I can make the
above changes fire only for Android triples.  In this case, we don't need to
immediately update CMake build rules.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to