[LLVMdev] Duplicate Label in Generates ISel

David Greene dag at cray.com
Thu Dec 3 11:52:31 PST 2009

On Thursday 03 December 2009 13:43, David Greene wrote:

> Whoops, I forgot to fill in types:
> (outs VR128:$dst), (ins VR129:$src1, i32i8imm:$src2)
> [(set DSTREGCLASS:$dst,
>       (v4f32 (extract_subreg
>                   (vector_shuffle
>                      (v8f32 undef),
>                      (v8f32 SRCREGCLASS:$src1),
>                      VEXTRACTF128_shuffle_mask:$src2),
>                   x86_subreg_128bit)))],

Well, it's conflicting with the hard-coded case statement from
DAGISelEmitter.cpp.  What's the best way to resolve this?  Introduce
another DAG operator that means the same thing as ISD::EXTRACT_SUBREG
but that can be used as the top-level operator in a pattern?


More information about the llvm-dev mailing list