Home | History | Annotate | Download | only in CodeGen

Lines Matching refs:IRType

485 bool UseX86_MMXType(llvm::Type *IRType) {
488 return IRType->isVectorTy() && IRType->getPrimitiveSizeInBits() == 64 &&
489 cast<llvm::VectorType>(IRType)->getElementType()->isIntegerTy() &&
490 IRType->getScalarSizeInBits() != 64;
913 llvm::Type *IRType = CGT.ConvertType(Ty);
914 if (UseX86_MMXType(IRType)) {
918 ABIArgInfo AAI = ABIArgInfo::getDirect(IRType);
1135 llvm::Type *GetSSETypeAtOffset(llvm::Type *IRType,
1138 llvm::Type *GetINTEGERTypeAtOffset(llvm::Type *IRType,
1746 llvm::Type *IRType = CGT.ConvertType(Ty);
1750 llvm::StructType *STy = dyn_cast<llvm::StructType>(IRType);
1752 IRType = STy->getElementType(0);
1753 STy = dyn_cast<llvm::StructType>(IRType);
1757 if (llvm::VectorType *VT = dyn_cast<llvm::VectorType>(IRType)){
1860 static bool ContainsFloatAtOffset(llvm::Type *IRType, unsigned IROffset,
1863 if (IROffset == 0 && IRType->isFloatTy())
1867 if (llvm::StructType *STy = dyn_cast<llvm::StructType>(IRType)) {
1875 if (llvm::ArrayType *ATy = dyn_cast<llvm::ArrayType>(IRType)) {
1889 GetSSETypeAtOffset(llvm::Type *IRType, unsigned IROffset,
1901 if (ContainsFloatAtOffset(IRType, IROffset, getDataLayout()) &&
1902 ContainsFloatAtOffset(IRType, IROffset+4, getDataLayout()))
1924 GetINTEGERTypeAtOffset(llvm::Type *IRType, unsigned IROffset,
1930 if ((isa<llvm::PointerType>(IRType) && Has64BitPointers) ||
1931 IRType->isIntegerTy(64))
1932 return IRType;
1940 if (IRType->isIntegerTy(8) || IRType->isIntegerTy(16) ||
1941 IRType->isIntegerTy(32) ||
1942 (isa<llvm::PointerType>(IRType) && !Has64BitPointers)) {
1943 unsigned BitWidth = isa<llvm::PointerType>(IRType) ? 32 :
1944 cast<llvm::IntegerType>(IRType)->getBitWidth();
1948 return IRType;
1952 if (llvm::StructType *STy = dyn_cast<llvm::StructType>(IRType)) {
1964 if (llvm::ArrayType *ATy = dyn_cast<llvm::ArrayType>(IRType)) {
2225 llvm::Type *IRType = CGT.ConvertType(Ty);
2226 ResType = GetSSETypeAtOffset(IRType, 0, Ty, 0);