[llvm-bugs] [Bug 43180] New: AMDGPU backend doesn't support mempcpy builtin

via llvm-bugs llvm-bugs at lists.llvm.org
Fri Aug 30 06:39:06 PDT 2019


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

            Bug ID: 43180
           Summary: AMDGPU backend doesn't support mempcpy builtin
           Product: libraries
           Version: trunk
          Hardware: PC
                OS: All
            Status: NEW
          Severity: normal
          Priority: P
         Component: Backend: AMDGPU
          Assignee: unassignedbugs at nondot.org
          Reporter: gabravier at gmail.com
                CC: llvm-bugs at lists.llvm.org

Created attachment 22455
  --> https://bugs.llvm.org/attachment.cgi?id=22455&action=edit
7z archive containing the attachments

Very weirdly, it would seem that __builtin_mempcpy is not supported on amdgcn,
when __builtin_memcpy is.

When trying to compile a simple code file simply containing a wrapper function
calling these two functions (with -target amdgcn -mcpu=gfx909 (gfx909 so that
loads and stores work)), compiling a memcpy wrapper works, but compiling a
mempcpy wrapper crashes with "fatal error: error in backend: unsupported
libcall legalization"

I attached a 7z archive containing relevant files.

BTW was just trying to see the code generation for these builtins on multiple
platforms

Files in 7z archive :

- builtinMemcpy.c : code file containing a wrapper around __builtin_memcpy,
compiled with "clang -c builtinMemcpy.c -target amdgcn -mcpu=gfx909 -S"
- builtinMemcpy.s : result of the compilation of builtinMemcpy.c
- builtinMempcpy.c : code file containing a wrapper around __builtin_mempcpy
- builtinMempcpyPreprocessed.c : Preprocessed version of builtinMempcpy
provided by clang after crash
- builtinMempcpyRunScript.sh : Run script for builtinMempcpy provided by clang
after crash

-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20190830/7ad5d912/attachment.html>


More information about the llvm-bugs mailing list