Releases: intel/intel-graphics-compiler
igc-1.0.11104
Fixed Issues / Improvements
- Enable trampoline insertion pass by default
- Enforce default byte alignment in CMABI for LLVM 11+
- Fix dangling arguments that leads to random runtime results with stack calls
- Fix the implicit argument handling
- Improve generic address space resolution by analysis of allocas storing generic pointers.
- Resolve generic addrspaces in select with null operand.
- Skip bindless promotion on func with stackcall.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
bbdd1587f |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
v0.3.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.11061
Fixed Issues / Improvements
- Fix printf argument type size for Byte and Short types,
- Removal of stale dpas related code.
- Add flag to enable poisoning FP64 kernels on unsupported platforms.
- Add OpSwap support in AccSub
- Clear unnecessary add instructions created by StatelessToStateful,
- Other minor fixes and improvements.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
bbdd1587f |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
v0.3.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10988
Fixed Issues / Improvements
- Add attr disallowing kernel to spill.
- Add invalid predefined variable and surface ID.
- Generate visaasm sections in zebin for all FGs.
- Improve flag RA to reduce spilling.
- Improve GenXExtractVectorizer heuristics.
- Make spill space compression work with augmentation.
- Post-op fence invalidate settings for atomic operations.
- Prevent single elem struct generation in CMABI.
- Set the barrier information of each kernel and function appropriately.
- Update the analysis for kernel trimming and combine boolean variables.
- Use separate metadata to track total stack memory usage.
- ZEBIN: Add slm_alignment to .ze_info payload argument.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
bbdd1587f |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
v0.2.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10840
Fixed Issues / Improvements
- Fix for i24 and i48 load/store instructions.
- Retry-compile should be applied on per-kernel.
- Add possibility to fail on spills.
- Stackcall bug fixes.
- Optimization for udiv, urem, sdiv, srem if divisor is constant power of 2 value.
- Reformat DebugInfo library to follow LLVM coding style.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
bbdd1587f |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
99ac111 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10778
Fixed Issues / Improvements
- Add type to Parameter Attributes which change in LLVM12
- Fixed wrong execLaneMask when execSize is 32
- Utils to create read/write_variable_region
- Change max ARG and RET size
- Process unrolling threshold in VC
- IGC Stackcall Spec Changes
- Add support of RuntimeValue vectors: RuntimeValueLegalizationPass adjustment
- Move IndexFlattener to GenX Utils library
- Add offset to load coordinates
- Update IGC metrics output format
- Fix the bug to use LSC for spill/fill in linear scan RA
- Fix dst decl of sqrt translation
- Local atomic fmin, fmax were rewritten for performance increase
- Fix clobbered R0 in the payload section
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
1815034e3 |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
v0.1.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10713
Fixed Issues / Improvements
- Added support of RuntimeValue vectors: RuntimeValueLegalizationPass adjustment,
- vISA LocalScheduler: add 6-instructions-latency to WAR dependency to a send,
- LSC spill/fill support in linear scan RA,
- Adding Raytracing support,
- Refactored and update typed atomic implementation,
- Adding more OpenCL builtins extensions,
- Fixed a bug in indirect spill/fill,
- Introduced
CCLANG_INSTALL_PREBUILDS_DIR
option, - Introduced env flag and internal option for loop unroll threshold in VC,
- Fixed debug print for empty locations,
- Deprecated the uses of vISA::numEltPerGRF APIs in DebugInfo,
- Added support of RuntimeValue vectors: correct size for payload calculation,
- Added SPIRV-Tools prebuild support,
- Local atomic fetch_add was rewritten for performance increase,
- Added support for SPIR-V ceil, floor and trunc,
- Fixing finding LLVM directory when compiling LLVM prebuild,
- Added intrinsics for reading/writing to vISA variables,
- Added support for
@llvm.abs
, @llvm.stacksave
support fix,- Updated Github Actions IGC build types,
- IGA: GED update to 0.105,
- Other minor fixes and improvements.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
1815034e3 |
SPIRV-LLVM-Translator | llvm_release_110 |
99420daab |
SPIRV-Tools | master |
sdk-1.3.204.1 |
SPIRV-Headers | master |
sdk-1.3.204.1 |
vc-intrinsics | master |
v0.1.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10409
Fixed Issues / Improvements
- Replace calls to kernels when looping through a copied collection of users
- Enable abort on spill for linear Scan RA
- Merge uav writes from branches
- Other minor fixes and improvements.
Dependencies revisions
Project | Branch | Revision |
---|---|---|
opencl-clang | ocl-open-110 |
50bf6d75 |
SPIRV-LLVM-Translator | llvm_release_110 |
cf681c88 |
SPIRV-Tools | master |
eeb973f5 |
SPIRV-Headers | master |
ae217c17 |
vc-intrinsics | master |
v0.1.0 |
LLVM project | release/11.x |
llvmorg-11.1.0 |
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10395
Fixed Issues / Improvements
- Support for cl_intel_bfloat16_conversions.
- Improve Global Address Space resolution.
- Handle vector bitcasts in loads simplification
- Enable _ocl_dbg* variables in -O2 -g.
- Extending indirect stateless buffer promotion.
- Add ability to compile ELF directly to genBinary.
- Add an ability to disable generation of vISA LOC/FILE by VC.
- Support for HostAccessINTEL decoration.
- Support SPV_INTEL_split_barrier and cl_intel_split_work_group_barrier extensions.
- Adding a possibility to set ShaderOverridePath.
- Transform
SPV_INTEL_uniform_group_instructions
intoSPV_KHR_uniform_group_instructions
.
Dependencies revisions
- intel/opencl-clang@50bf6d7
- KhronosGroup/SPIRV-LLVM-Translator@cf681c8 (for opencl-clang)
- KhronosGroup/SPIRV-Tools@eeb973f
- KhronosGroup/SPIRV-Headers@ae217c1
- intel/vc-intrinsics@5066d94
- llvm/[email protected]
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10200
Fixed Issues / Improvements
- Fix compilation error with GCC 12
- Remove redundant vector CMCL builtins declarations
printf
implementation with high-level interfaces- VC produces debuggable kernels by default
- Support ptrtoint constexpr in GV initializers
- Applied m16 on a0 init
- Moved KernelInfo to GenX Utils library
- Fixed dependencies handling in genx printer
- Added support of SPIRV floating point fma via CMCL in VC
- SGInvoke: fix for WA when DumpToCurrentDir flag is set
- Added PVC specific named barriers handling
- Improve dump of values in pass printer
- Other minor fixes and improvements.
Dependencies revisions
- intel/opencl-clang@16ff905
- KhronosGroup/SPIRV-LLVM-Translator@cf681c8 (for opencl-clang)
- KhronosGroup/SPIRV-Tools@eeb973f
- KhronosGroup/SPIRV-Headers@ae217c1
- intel/vc-intrinsics@d3cef33
- llvm/[email protected]
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.
igc-1.0.10183
Fixed Issues / Improvements
-
Adding DG2 & PVC intrinscs
-
Adding more DG2 & PVC code
-
Make spill cleanup less aggressive.
-
Correctly handle llvm::Expected in vISA linker
-
Fold bitcasts to rdregion/wrregion by changing region parameters
-
Enable madw use in i64 mul emulator
-
SIP update DG2/XeHP SDV
-
Enable MergeURBReads pass
-
Refactor builtins operating on images and samplers
-
Support abs and fabs instructions
-
Support fp16 type for OpAtomicLoad, OpAtomicStore and OpAtomicExchange
-
Support printf strings in global addrspace
-
Introducing 2d stateless support for LSC
-
Fix PrivateMemoryResolution pass for XeHP and later
-
Create a GenISA intrinsic for native Mad instructions
-
Fixed problem with resolved values caching in JointMatrix resolution pass
-
Other minor fixes and improvements.
Dependencies revisions
- intel/opencl-clang@16ff905
- KhronosGroup/SPIRV-LLVM-Translator@585ca33 (for opencl-clang)
- intel/vc-intrinsics@d3cef33
- llvm/[email protected]
Ubuntu 18.04 binary packages for LLVM11/Clang11 are included.