Changeset 5956 for icGREP


Ignore:
Timestamp:
Apr 9, 2018, 1:14:19 PM (10 months ago)
Author:
cameron
Message:

Fix for signmask on AVX512

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/IR_Gen/idisa_builder.cpp

    r5914 r5956  
    445445    if (fw < 8) report_fatal_error("Unsupported field width: hsimd_signmask " + std::to_string(fw));
    446446    Value * mask = CreateICmpSLT(fwCast(fw, a), ConstantAggregateZero::get(fwVectorType(fw)));
    447     return CreateZExt(CreateBitCast(mask, getIntNTy(mBitBlockWidth/fw)), getInt32Ty());
     447    mask = CreateBitCast(mask, getIntNTy(mBitBlockWidth/fw));
     448    if (mBitBlockWidth/fw < 32) return CreateZExt(mask, getInt32Ty());
     449    else return mask;
    448450}
    449451
Note: See TracChangeset for help on using the changeset viewer.