[LLVMdev] LLVM Loop Vectorizer
clattner at apple.com
Fri Oct 5 17:19:34 PDT 2012
On Oct 5, 2012, at 11:49 AM, Eric Christopher <echristo at gmail.com> wrote:
>> I think this is the wrong way to look at the problem. The real question is: why should we keep OPT and LLC separate? Keeping them separate and using some extension of TargetData will just mean manually duplicating information in this extended TargetData that we otherwise have in the backends. This is error-prone [from personal experience] and otherwise unproductive.
> You quite obviously misunderstood me.
>> In addition, merging the tools will allow the consolidation of target-specific code in OPT. There is code in InstCombine, for example, that specifically deals with x86 intrinsics. This code should be moved into a callback provided by the x86 target. Currently, however, this is not possible because of this separation.
> Making the data available to the passes is just fine, I don't see a
> need to merge the two tools.
If the two tools need to link in the same stuff, it just comes down to command line interfaces.
I think it makes a lot of sense to make an llvm-cli tool (or whatever) that does something great, then provide opt/llc bourne shell scripts so that my finger memory still works.
I get an llvm that doesn't spend forever linking when I build it, *and* muscle memory still works :)
More information about the llvm-dev