Fixed Issues / Improvements
- Fail compilation with error message instead of crash if we can't find sampler argument or inline/global sampler.
- DWARF debugger location expressions fixes.
- Remove redundant LICM pass.
- Enable timestats through regkey.
- extend the MarkReadOnlyPass to mark loads with constant address space with invariant.load.
- Adding metadata for computedDepthMode.
- Enable vISA instruction splitting pass.
- Open-sourcing CM FE related parts of driver.
- Fix system LLVM handling in VC.
- update integer splitter api in VectorCompiler.
- Improve lowering of ord/unord fcmp.
- Emask calculation correcting by remove the write enable and using right data types.
- Basic block where flow control partially joins should also be treated as divergent.
- Limit total thread payload size to 96 GRFs.
- Tighten up vISA assembly syntax: do not allow missing regions for general operands, do not allow two offsets for address operands.
- Fixed operations with overflow.
- Prevent tracking of images and samplers from falling into infinite loop.
- Fix lowpc/highpc for subroutines in debug info.
- Make Dst operand's subreg offset immutable.
- Get rid of unnecessary MOVS.
- Check for undefined predicate variables when parsing vISA assembly.
- Removing the dst/src overlap checking after augmentation.
- ZEBinary: add kernel symbol.
- Fix TPM's replaceGatherPrivate.
- Add ZEAutoTool.
- Report parser error for vISA inline assembly in releaseInternal build.
- ZEBinaryBuilder: Fix packed_local_ids size to 6 instead of 12.
- DWARF debugger location expressions fixes.
- Avoid multiple metadata regenerating in AggregateArguments pass.
- Refactor for stack call functions. Combine code for caller/callee stack load/store.
- Fix shuffleVector lowering in legalization pass.
Ubuntu 18.04 binary packages for LLVM10/Clang10 are included.