[LLVMdev] Command line options being put in Target backend libraries

Hal Finkel hfinkel at anl.gov
Fri Aug 23 12:27:23 PDT 2013


----- Original Message -----
> Hi,
> 
> Thanks for your reply, Sean.
> 
> I think the reason users arent complaining about this is because,
> users
> dont link with target libraries.
> 
> This is going to be a major cleanup too as there have been a lot of
> options defined across all the targets.
> 
> A simple find/grep shows you a total of 98 options defined in
> libraries.

I think that we'd need to do a more-careful audit to see how many of these options should really be user accessible. Some of them are there only to enable experimental features or assist target developers with debugging. Nevertheless, we may want to have a more flexible context-based system even for those options.

 -Hal

> 
> Thanks
> 
> Shankar Easwaran
> 
> On 8/23/2013 1:41 PM, Sean Silva wrote:
> > It is definitely an issue, since the command line options are
> > basically
> > globals, which fundamentally goes against LLVM's library-based
> > design.
> >
> > -- Sean Silva
> >
> >
> > On Fri, Jul 26, 2013 at 7:03 PM, Shankar Easwaran
> > <shankare at codeaurora.org>wrote:
> >
> >> Hi,
> >>
> >> I see a lot of command line options being set in Target backend
> >> libraries.
> >> The problem with that is if a third party tool links with Target
> >> libraries
> >> and has a command line option that needs to be processed, the
> >> option in the
> >> Target libraries will get overridden.
> >>
> >> $ cd llvm/lib/Target
> >> $ grep 'cl::' */*.cpp --> produces lot of such occurences.
> >>
> >> For example :- libLLVMX86CodeGen.a contains
> >> libLLVMX86CodeGen.a:**X86RegisterInfo.cpp.o:**0000000000000080 b
> >> EnableBasePointer
> >>
> >> I think those command line options would need to be moved to the
> >> drivers
> >> that are using them, Isnt it ?
> >>
> >> Am I mistaken ?
> >>
> >> Thanks
> >>
> >> Shankar Easwaran
> >>
> >> --
> >> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> >> hosted
> >> by the Linux Foundation
> >>
> >> ______________________________**_________________
> >> 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>
> >>
> 
> 
> --
> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
> hosted by the Linux Foundation
> 
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
> 

-- 
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory



More information about the llvm-dev mailing list