Buffer alignment warning

I’m getting the same warning as discussed in Data alignment mismatch warning, and I tracked it down to this code:

src/pass/storage_flatten.cc:

       // use small alignment for small arrays
       int32_t const_size = Allocate::constant_allocation_size(shape);
       int align = GetTempAllocaAlignment(op->type, const_size);
       if (skey.tag.length() != 0) {
         MemoryInfo info = GetMemoryInfo(skey.to_string());
         if (info.defined()) {
==>       align = (info->max_simd_bits + op->type.bits() - 1) / op->type.bits();
           CHECK_LE(const_size * op->type.bits(), info->max_num_bits)
               << "Allocation exceed bound of memory tag " << skey.to_string();
         }
       }

The alignment of a buffer is always expressed in bytes, but this seems to divide it by the size of the data type. This seems like an error, is this line meant to be there? Should be removed, or at least should the alignment be set to max_simd_bits / 8 ?