From da6008128e6bb84cd1946bf80b6574e8c9787dfb Mon Sep 17 00:00:00 2001 From: Philippe Tillet Date: Sat, 6 Jun 2020 01:13:38 -0400 Subject: [PATCH] [CODEGEN] Fixed bug in alignment inference that prevented vectorization in some cases --- lib/codegen/analysis/align.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/lib/codegen/analysis/align.cc b/lib/codegen/analysis/align.cc index 66aff113c..95ccb8dc3 100644 --- a/lib/codegen/analysis/align.cc +++ b/lib/codegen/analysis/align.cc @@ -287,10 +287,8 @@ std::vector align::populate_max_contiguous_binop(ir::binary_operator* } if(x->is_int_add_sub()){ unsigned lvalue = 1, rvalue = 1; - if(lhs_cst_info[d].num_cst > 0) - lvalue = gcd(rhs_max_contiguous[d], lhs_cst_info[d].num_cst); - if(rhs_cst_info[d].num_cst > 0) - rvalue = gcd(lhs_max_contiguous[d], rhs_cst_info[d].num_cst); + lvalue = gcd(rhs_max_contiguous[d], lhs_starting_multiple[d]); + rvalue = gcd(lhs_max_contiguous[d], rhs_starting_multiple[d]); value = std::max(lvalue, rvalue); } result.push_back(value);