builder/llpcBuilderImplArith.cpp
Value* BuilderImplArith::CreateCallAmdgcnClass(
    Value*        pValue,     // [in] Input value
    uint32_t      flags,      // Flags for what class(es) to check for
    const Twine&  instName)   // [in] Name to give instruction(s)
{
    Value* pResult = Scalarize(pValue,
                               [this, flags](Value* pValue)
                               {
                                  return CreateIntrinsic(Intrinsic::amdgcn_class,
                                                         pValue->getType(),
                                                         { pValue, getInt32(flags) });
                               });
    pResult->setName(instName);
    return pResult;
}
// =====================================================================================================================
// Helper method to create call to llvm.amdgcn.class, scalarizing if necessary. This is not exposed outside of
// BuilderImplArith.
Helper method to create call to llvm.amdgcn.class, scalarizing if necessary. This is not exposed outside of
BuilderImplArith.
Helper method to create call to llvm . amdgcn . class scalarizing if necessary . This is not exposed outside of BuilderImplArith .
Value* BuilderImplArith::CreateCallAmdgcnClass(
    Value*        pValue,     
    uint32_t      flags,      
    const Twine&  instName)   
{
    Value* pResult = Scalarize(pValue,
                               [this, flags](Value* pValue)
                               {
                                  return CreateIntrinsic(Intrinsic::amdgcn_class,
                                                         pValue->getType(),
                                                         { pValue, getInt32(flags) });
                               });
    pResult->setName(instName);
    return pResult;
}
Value * BuilderImplArith :: CreateCallAmdgcnClass ( Value * pValue , uint32_t flags , const Twine & instName ) { Value * pResult = Scalarize ( pValue , [ this , flags ] ( Value * pValue ) { return CreateIntrinsic ( Intrinsic :: amdgcn_class , pValue -> getType ( ) , { pValue , getInt32 ( flags ) } ) ; } ) ; pResult -> setName ( instName ) ; return pResult ; }
Helper method to create call to llvm.amdgcn.class, scalarizing if necessary.
Helper method to create call to llvm . amdgcn . class scalarizing if necessary .
// [in] Input value // Flags for what class(es) to check for // [in] Name to give instruction(s)