Skip to content

Commit d2c6440

Browse files
Jay-Jiewu-Lusys_zuul
authored andcommitted
minor refactor.
Change-Id: Iceea7d5c194ab9b4b0437e0695e6179e3e2960b2
1 parent f56cd18 commit d2c6440

File tree

1 file changed

+16
-16
lines changed

1 file changed

+16
-16
lines changed

IGC/Compiler/CISACodeGen/helper.cpp

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1332,24 +1332,24 @@ namespace IGC
13321332
{
13331333
llvm::Value* ret = val;
13341334
llvm::Type* type = val->getType();
1335-
switch (type->getTypeID())
1336-
{
1337-
case llvm::Type::FloatTyID:
1338-
break;
1339-
case llvm::Type::IntegerTyID:
1340-
//yes, we bitcast here and bitcast back later to use it. add another way, like cast logic, if you prefer.
1335+
assert(type->isSingleValueType() && !type->isVectorTy() && "Only scalar data is supported here!");
1336+
assert(type->getTypeID() == Type::FloatTyID ||
1337+
type->getTypeID() == Type::HalfTyID ||
1338+
type->getTypeID() == Type::IntegerTyID ||
1339+
type->getTypeID() == Type::DoubleTyID);
1340+
1341+
unsigned dataSize = type->getScalarSizeInBits();
1342+
if (16 == dataSize){
1343+
ret = builder.CreateFPExt(builder.CreateBitCast(val, builder.getHalfTy()), builder.getFloatTy());
1344+
}else if (32 == dataSize){
13411345
ret = builder.CreateBitCast(val, builder.getFloatTy());
1342-
break;
1343-
case llvm::Type::DoubleTyID:
1344-
{
1346+
}else if (64 == dataSize){
13451347
llvm::Type* vecType = llvm::VectorType::get(builder.getFloatTy(), 2);
13461348
ret = builder.CreateBitCast(val, vecType);
1349+
}else{
1350+
llvm_unreachable("Unsupported type in ConvertToFloat of helper.");
13471351
}
1348-
break;
1349-
default:
1350-
assert(!"unsupported data type!");
1351-
break;
1352-
}
1352+
13531353
return ret;
13541354
}
13551355

@@ -1409,7 +1409,7 @@ namespace IGC
14091409
}
14101410
break;
14111411
default:
1412-
assert(!"Unsupported data type! Please enhance this function first.");
1412+
llvm_unreachable("Unsupported type in ScalarizeAggregateMembers of helper! Please enhance this function first.");
14131413
break;
14141414
}
14151415
}
@@ -1454,7 +1454,7 @@ namespace IGC
14541454
}
14551455
break;
14561456
default:
1457-
assert(!"Unsupported data type! Please enhance this function first.");
1457+
llvm_unreachable("Unsupported type in ScalarizeAggregateMemberAddresses of helper! Please enhance this function first.");
14581458
break;
14591459
}
14601460
}

0 commit comments

Comments
 (0)