GlobalISel: Fix else after return

This commit is contained in:
Matt Arsenault 2020-01-09 11:03:17 -05:00 committed by Matt Arsenault
parent 255cc5a760
commit ac53a5f1dc
1 changed files with 9 additions and 3 deletions

View File

@ -24,15 +24,21 @@ LLT llvm::getLLTForType(Type &Ty, const DataLayout &DL) {
if (NumElements == 1)
return ScalarTy;
return LLT::vector(NumElements, ScalarTy);
} else if (auto PTy = dyn_cast<PointerType>(&Ty)) {
return LLT::pointer(PTy->getAddressSpace(), DL.getTypeSizeInBits(&Ty));
} else if (Ty.isSized()) {
}
if (auto PTy = dyn_cast<PointerType>(&Ty)) {
unsigned AddrSpace = PTy->getAddressSpace();
return LLT::pointer(AddrSpace, DL.getPointerSizeInBits(AddrSpace));
}
if (Ty.isSized()) {
// Aggregates are no different from real scalars as far as GlobalISel is
// concerned.
auto SizeInBits = DL.getTypeSizeInBits(&Ty);
assert(SizeInBits != 0 && "invalid zero-sized type");
return LLT::scalar(SizeInBits);
}
return LLT();
}