[LLVMdev] Out of tree targets

Eric Christopher echristo at gmail.com
Tue Mar 10 23:48:01 PDT 2015


No particular objection, guess we'll see what it looks like when you're
done. :)

-eric

On Mon, Mar 9, 2015 at 12:57 PM Neil Henning <llvm at duskborn.com> wrote:

>  So would anyone object to me trying to find a resolution for this? The
> easiest way would be that explicit subdirectories in the LLVMBuild.txt are
> always picked up, but we could have a way to scan the folders in
> lib/Target, and any folder can be added if it was declared in the
> experimental build option (or something to that effect).
>
>
> -Neil.
>
>
> On 09/03/15 17:22, Eric Christopher wrote:
>
> Mmm.. true. Explicit dependencies are both nice and annoying. We'd need to
> mention it somewhere basically.
>
>  -eric
>
> On Mon, Mar 9, 2015 at 10:19 AM Anton Korobeynikov <
> anton at korobeynikov.info> wrote:
>
>> I believe we'd need LLVMBuild.txt even in autoconf build - for bunch
>> of autogenerated stuff, e.g. list of all asmprinters / asmparsers /
>> InitializeAllTargetInfos, etc., since targets are not autoregistered
>> anymore.
>>
>> On Mon, Mar 9, 2015 at 7:20 PM, Eric Christopher <echristo at gmail.com>
>> wrote:
>> > Hi Neil,
>> >
>> > Weird, I'd think the cmake build should probably do something similar
>> to the
>> > autoconf build if possible and just have subdirectories equal to the
>> targets
>> > to build. I'm not sure if this is possible etc... could try some setting
>> > etc.
>> >
>> > -eric
>> >
>> > On Mon, Mar 9, 2015 at 9:11 AM Neil Henning <llvm at duskborn.com> wrote:
>> >>
>> >> Hey all,
>> >>
>> >> Quick query on out of tree target support - at present I can drop a
>> folder
>> >> Foo into <llvm>/lib/Target/Foo and use the CMake option
>> >> LLVM_EXPERIMENTAL_TARGETS_TO_BUILD to pick up my target. The issue is
>> that I
>> >> still need to patch the one LLVMBuild.txt file in <llvm>/lib/Target
>> with;
>> >>
>> >> iff --git a/lib/Target/LLVMBuild.txt b/lib/Target/LLVMBuild.txt
>> >> index 4112046..6e42cbe 100644
>> >> --- a/lib/Target/LLVMBuild.txt
>> >> +++ b/lib/Target/LLVMBuild.txt
>> >> @@ -16,7 +16,7 @@
>> >>
>> >>
>> ;===------------------------------------------------------------------------===;
>> >>
>> >>  [common]
>> >> -subdirectories = ARM AArch64 BPF CppBackend Hexagon MSP430 NVPTX Mips
>> >> PowerPC R600 Sparc SystemZ X86 XCore
>> >> +subdirectories = ARM AArch64 BPF CppBackend Hexagon MSP430 NVPTX Mips
>> >> PowerPC R600 Sparc SystemZ X86 XCore Foo
>> >>
>> >>  ; This is a special group whose required libraries are extended (by
>> >> llvm-build)
>> >>  ; with the best execution engine (the native JIT, if available, or the
>> >>
>> >> To include my target in the LLVM build, and this allows me to specify
>> >> -march=foo and it will call into my code correctly.
>> >>
>> >> Am I missing something - or is this patch definitely required?
>> >>
>> >> If the patch is required - does anyone have any suggestions/ideas how I
>> >> could add support to either LLVMBuild or the specific LLVMBuild.txt
>> file so
>> >> that it would pick up my new Target?
>> >>
>> >> I understand that my patch is tiny and relatively easy to maintain (it
>> >> will basically always merge well) - but it still irks me having to
>> keep a
>> >> patch where it probably isn't required!
>> >>
>> >> Cheers,
>> >> -Neil.
>> >> _______________________________________________
>> >> LLVM Developers mailing list
>> >> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> >
>> >
>> > _______________________________________________
>> > LLVM Developers mailing list
>> > LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>> > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>> >
>>
>>
>>
>> --
>> With best regards, Anton Korobeynikov
>> Faculty of Mathematics and Mechanics, Saint Petersburg State University
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150311/a32efe9d/attachment.html>


More information about the llvm-dev mailing list