[#llvm-getHorizDemandedEltsForFirstOperand] = xref:llvm.adoc[llvm]::getHorizDemandedEltsForFirstOperand :relfileprefix: ../ :mrdocs: Compute the demanded elements mask of horizontal binary operations. == Synopsis Declared in `<llvm/Analysis/VectorUtils.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- void getHorizDemandedEltsForFirstOperand( unsigned int VectorBitWidth, xref:llvm/APInt.adoc[APInt] const& DemandedElts, xref:llvm/APInt.adoc[APInt]& DemandedLHS, xref:llvm/APInt.adoc[APInt]& DemandedRHS); ---- == Description A horizontal operation combines two adjacent elements in a vector operand. This function returns a mask for the elements that correspond to the first operand of this horizontal combination. For example, for two vectors [X1, X2, X3, X4]and [Y1, Y2, Y3, Y4], the resulting mask can include the elements X1, X3, Y1, and Y3. To get the other operands, simply shift the result of this function to the left by 1. == Parameters [cols="1,4"] |=== | Name| Description | *VectorBitWidth* | the total bit width of the vector | *DemandedElts* | the demanded elements mask for the operation | *DemandedLHS* | the demanded elements mask for the left operand | *DemandedRHS* | the demanded elements mask for the right operand |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#