[LLVMdev] Problem with PTX assembly printing (NVPTX backend)

ankur deshwal a.s.deshwal at gmail.com
Mon Feb 4 10:52:35 PST 2013


Hi Nikolaos,

Following commands work great for me.
$ clang -S -emit-llvm -target nvptx -x cl -include clc/clctypes.h
../data-types/scalar.cl
$ llc -mcpu=sm_30 scalar.s

You can follow Justin's blog [1]. It helped me a lot to understand where to
start.

[1] http://jholewinski.org/blog/llvm-3-0-ptx-backend/

Best,
Ankur


On Mon, Feb 4, 2013 at 11:40 PM, Justin Holewinski <
justin.holewinski at gmail.com> wrote:

> On Mon, Feb 4, 2013 at 1:09 PM, <nkavv at physics.auth.gr> wrote:
>
>> Hi Justin,
>>
>>
>>  Has anyone had similar problems with the NVPTX backend? Shouldn't this
>>>> code be linked to the AsmPrinter library for NVPTX (already)?
>>>>
>>>
>>> What do you mean by "doesn't work"?  The AsmPrinter library really houses
>>> the MCInst printer, which isn't implemented for NVPTX yet.  The older
>>> assembly printer works just fine.  This is transparent to users.  The
>>> NVPTX
>>> target can be used just like MIPS and X86 with llc (and library users).
>>>
>>> Is llc saying nvptx is an invalid target?  If so, you probably built LLVM
>>> without NVPTX.
>>>
>>
>> I've used -enable-targets=all, and all libLLVMNVPTX*.a libs were
>> produced. However, the AsmPrinter one looks dummy.
>>
>> Further, nvptx appears as a registered target when running llc --version.
>>
>> llc doesn't complain, but just "runs" forever with apparently no output
>
>
> Can you post the llc command line you're using?  Can you post an LLVM IR
> file that causes this behavior?
>
>
>>
>>
>>  BTW I've built LLVM with mingw (strange mixture of gcc-3.4.5 and
>>>> g++-4.6.1). Native compilation, MIPS backend and other things that i've
>>>> tested, all work properly.
>>>>
>>>
>>> Perhaps this "strange mixture" is causing some symbol errors somewhere.
>>> Can you post the exact sequence of steps you used to build LLVM, along
>>> with
>>> the llc command-line that fails for you?
>>>
>>
>> My configuration options were:
>>
>> --prefix=/my/local/path/or/so --enable-shared --enable-targets=all
>> --enable-optimized --disable-libffi --disable-debug-runtime
>> --disable-assertions --disable-expensive-checks
>>
>> Following configuration i did the typical make and make install (to a
>> selected path by --prefix.
>>
>>
>> Best regards
>> Nikolaos Kavvadias
>>
>>
>>
>>>
>>>
>>>> Any help is appreciated.
>>>>
>>>> Best regards,
>>>> Nikolaos Kavvadias
>>>>
>>>>
>>>>
>>>> ______________________________****_________________
>>>>
>>>> LLVM Developers mailing list
>>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>>> http://lists.cs.uiuc.edu/****mailman/listinfo/llvmdev<http://lists.cs.uiuc.edu/**mailman/listinfo/llvmdev>
>>>> <http:**//lists.cs.uiuc.edu/mailman/**listinfo/llvmdev<http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev>
>>>> >
>>>>
>>>>
>>>
>>>
>>> --
>>>
>>> Thanks,
>>>
>>> Justin Holewinski
>>>
>>>
>>
>>
>>
>
>
> --
>
> Thanks,
>
> Justin Holewinski
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130205/278b9f97/attachment.html>


More information about the llvm-dev mailing list