[llvm-commits] [llvm] r171469 - in /llvm/trunk: include/llvm/Target/TargetTransformImpl.h include/llvm/TargetTransformInfo.h lib/Target/TargetTransformImpl.cpp lib/Target/X86/X86ISelLowering.cpp lib/Target/X86/X86ISelLowering.h lib/Transforms/Vectorize/LoopVectorize.cpp lib/Transforms/Vectorize/LoopVectorize.h test/Transforms/LoopVectorize/X86/gcc-examples.ll test/Transforms/LoopVectorize/gcc-examples.ll
Hal Finkel
hfinkel at anl.gov
Fri Jan 4 10:31:47 PST 2013
----- Original Message -----
> From: "Nadav Rotem" <nrotem at apple.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: llvm-commits at cs.uiuc.edu
> Sent: Friday, January 4, 2013 12:24:32 PM
> Subject: Re: [llvm-commits] [llvm] r171469 - in /llvm/trunk: include/llvm/Target/TargetTransformImpl.h
> include/llvm/TargetTransformInfo.h lib/Target/TargetTransformImpl.cpp lib/Target/X86/X86ISelLowering.cpp
> lib/Target/X86/X86ISelLowering.h lib/Transforms/Vectorize/LoopVectorize.cpp lib/Transforms/Vectorize/LoopVectorize.h
> test/Transforms/LoopVectorize/X86/gcc-examples.ll test/Transforms/LoopVectorize/gcc-examples.ll
>
> >> +}
> >
> > Can't we get this from the generic TLI code? As I recall, you tried
> > to get register information into VTTI at one point, but had to
> > back it out because of shared-library linking problems. We should
> > really investigate that again.
> >
>
> I looked at this together with Jakob and it looks difficult to do.
> Here is an example of why it is difficult. On x86 32bit systems we
> still have 16 registers, but we mark them as reserved. This means
> that VTTI would have to go through all of the registers (and sub
> registers) and figure out which registers are available.
Okay, fair enough.
>
> >>
> >
> > This is great, but please move it elsewhere. I'd like to use this
> > in the regular unroller (among other places). Also, we'll need to
> > differentiate different register types (at least vector registers
> > from scalar registers) -- I've taken only a quick look, but this
> > does not seem to do that.
> >
>
> Yes, we should do it. Maybe it should be in the cost model analysis ?
That seems to make sense. We'll need to make an actual header file for it then ;)
Thanks again,
Hal
> At the moment it does not distinguish between vector and scalar
> registers.
>
>
> > Thanks again,
> > Hal
>
>
--
Hal Finkel
Postdoctoral Appointee
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-commits
mailing list