basic split-k across warps working for GEMM
This commit is contained in:
@@ -148,13 +148,13 @@ DEFINE_UNARY_FLOAT(fneg)
|
||||
value* builder::create_insert_nuwnswb_binop(binary_operator::op_t op, value *lhs,
|
||||
value *rhs, const std::string &name,
|
||||
bool has_nuw, bool has_nsw) {
|
||||
if(auto *clhs = dynamic_cast<constant_int*>(lhs)){
|
||||
if(auto *crhs = dynamic_cast<constant_int*>(rhs)){
|
||||
constant_expression* result = constant_expression::create(op, clhs, crhs);
|
||||
if (has_nuw) result->set_has_no_unsigned_wrap();
|
||||
if (has_nsw) result->set_has_no_signed_wrap();
|
||||
return result;
|
||||
}
|
||||
auto *clhs = dynamic_cast<constant_int*>(lhs);
|
||||
auto *crhs = dynamic_cast<constant_int*>(rhs);
|
||||
if(clhs && crhs){
|
||||
constant_expression* result = constant_expression::create(op, clhs, crhs);
|
||||
if (has_nuw) result->set_has_no_unsigned_wrap();
|
||||
if (has_nsw) result->set_has_no_signed_wrap();
|
||||
return result;
|
||||
}
|
||||
else {
|
||||
binary_operator* result = insert(binary_operator::create(op, lhs, rhs), name);
|
||||
|
Reference in New Issue
Block a user