Lines Matching refs:opNode
4139 // In effect, opNode is the same as (scalar_to_vector (IntNode)).
4141 SDPatternOperator opNode> {
4142 // If a lane instruction caught the vector_extract around opNode, we can
4144 def : Pat<(v8i8 (opNode V64:$Rn)),
4147 def : Pat<(v16i8 (opNode V128:$Rn)),
4150 def : Pat<(v4i16 (opNode V64:$Rn)),
4153 def : Pat<(v8i16 (opNode V128:$Rn)),
4156 def : Pat<(v4i32 (opNode V128:$Rn)),
4162 def : Pat<(i32 (vector_extract (insert_subvector undef, (v8i8 (opNode V64:$Rn)),
4167 def : Pat<(i32 (vector_extract (v16i8 (opNode V128:$Rn)), (i64 0))),
4172 (v4i16 (opNode V64:$Rn)), (i32 0)), (i64 0))),
4176 def : Pat<(i32 (vector_extract (v8i16 (opNode V128:$Rn)), (i64 0))),
4180 def : Pat<(i32 (vector_extract (v4i32 (opNode V128:$Rn)), (i64 0))),
4188 SDPatternOperator opNode>
4189 : SIMDAcrossLanesIntrinsic<baseOpc, opNode> {
4193 (opNode (v8i8 V64:$Rn)), (i32 0)), (i64 0))), i8)),
4199 (opNode (v16i8 V128:$Rn)), (i64 0))), i8)),
4205 (opNode (v4i16 V64:$Rn)), (i32 0)), (i64 0))), i16)),
4211 (opNode (v8i16 V128:$Rn)), (i64 0))), i16)),
4219 SDPatternOperator opNode>
4220 : SIMDAcrossLanesIntrinsic<baseOpc, opNode> {
4224 (opNode (v8i8 V64:$Rn)), (i32 0)), (i64 0))), maski8_or_more)),
4229 def : Pat<(i32 (and (i32 (vector_extract (opNode (v16i8 V128:$Rn)), (i64 0))),
4236 (opNode (v4i16 V64:$Rn)), (i32 0)), (i64 0))), maski16_or_more)),
4241 def : Pat<(i32 (and (i32 (vector_extract (opNode (v8i16 V128:$Rn)), (i64 0))),