Use onstantDataSequential::getElementType to allow vector type.
Use getShuffleMaskForBitcode to get ShuffleMask.
Use old format for alloca Align.
|  Differential  D132102  
[DirectX] Fix crash on ShuffleVectorInst in DXILBitcodeWriter Authored by python3kgae on Aug 17 2022, 11:40 PM. 
Details Use onstantDataSequential::getElementType to allow vector type. Use getShuffleMaskForBitcode to get ShuffleMask. Use old format for alloca Align. 
Diff Detail 
 
Unit Tests 
 Event Timeline
 | |||||||||||||||
FYI, this produces compiler warnings for me:
/usr/local/google/home/kubak/llvm/llvm-project/llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp:2454:20: warning: implicit conversion from 'const uint 64_t' (aka 'const unsigned long') to 'uint32_t' (aka 'unsigned int') changes value from 4294967296 to 0 [-Wconstant-conversion] assert(Log2_32(Value::MaximumAlignment) + 1 < 1 << 5 && ~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/assert.h:93:27: note: expanded from macro 'assert' (static_cast <bool> (expr) \ ^~~~ 1 warning generated.