[LLVMdev] Instruction MVT::ValueTypes
David Greene
dag at cray.com
Wed Sep 17 14:51:16 PDT 2008
On Wednesday 03 September 2008 15:42, Dan Gohman wrote:
> For the case of MOVAPS vs. MOVAPD vs. MOVDQU (assuming you have a
> micro-architecture where there's actually a difference), this can be
> achieved by having instruction selection select the right instructions.
> For example, find code like this in X86InstrSSE.td:
>
> def : Pat<(alignedloadv2i64 addr:$src),
> (MOVAPSrm addr:$src)>, Requires<[HasSSE2]>;
> def : Pat<(loadv2i64 addr:$src),
> (MOVUPSrm addr:$src)>, Requires<[HasSSE2]>;
>
> and change it to not select MOVAPS for that microarchitecture, for
> example.
Unfortunately that doesn't help when, for example, you need to generate
spill code. :)
-Dave
More information about the llvm-dev
mailing list