search for: x86_subreg_128bit

Displaying 3 results from an estimated 3 matches for "x86_subreg_128bit".

2009 Dec 03
2
[LLVMdev] Duplicate Label in Generates ISel
...ed for VEXTRACTF128 which uses extract_subreg: [(set DSTREGCLASS:$dst, (DSTTYPE (extract_subreg (vector_shuffle (SRCTYPE undef), (SRCTYPE SRCREGCLASS:$src1), VEXTRACTF128_shuffle_mask:$src2), x86_subreg_128bit)))], def x86_subreg_128bit : PatLeaf<(i32 1)>; Curiously, I have analogous patterns for VINSERTF128 that use insert_subreg but it doesn't generate any duplicate case values. Anyone seen something like this before? Any ideas on how to fix it? -Dave
2009 Dec 03
0
[LLVMdev] Duplicate Label in Generates ISel
...t_subreg: > > [(set DSTREGCLASS:$dst, > (DSTTYPE (extract_subreg > (vector_shuffle > (SRCTYPE undef), > (SRCTYPE SRCREGCLASS:$src1), > VEXTRACTF128_shuffle_mask:$src2), > x86_subreg_128bit)))], > > def x86_subreg_128bit : PatLeaf<(i32 1)>; 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),...
2009 Dec 03
1
[LLVMdev] Duplicate Label in Generates ISel
...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?...