Commit Graph

37 Commits

Author SHA1 Message Date
fd46428741 Switch builds to LLVM 16 and update docs
Switch builds to use LLVM 16. Updated the documentation to treat LLVM 16 as default.
Refreshed parts of buildIGC.sh regarding supported versions. Fixed a bug when setting a variable in buildIGC.sh to a default value.

Force enabled exceptions for VC. This is a workaround while we're investigating why they're disabled.
2025-10-24 12:25:56 +02:00
cee5744a62 Drop some of the LLVM major version checks
Remove redundant code related to release versions that are no longer in use.
2024-05-15 10:36:44 +02:00
02f6f546ce Enable vc lit tests
Cmake modifications for VC lit tests
2023-06-20 18:53:56 +02:00
990d4ff0f5 list of supported platforms moved to separate file
minor cosmetic refactoring
2022-03-04 15:12:09 +01:00
c7c87daaa0 new tool for BiF precompilation
add VCB - a tool that to do platform-specific precompilatin of BiF.
Now works only for Emulation BiFs, can be easy extended to others.
2022-03-03 14:07:10 +01:00
35c947c263 Add to build possibility to specify prebuilt vc-intrinsics
Add to build possibility to specify prebuilt vc-intrinsics
2022-02-22 02:25:52 +01:00
3bb7900ae4 [Autobackout][FuncReg]Revert of change: 13ee3c6c17
Add to build possibility to specify prebuilt vc-intrinsics

Add to build possibility to specify prebuilt vc-intrinsics
2022-02-19 01:37:48 +01:00
13ee3c6c17 Add to build possibility to specify prebuilt vc-intrinsics
Add to build possibility to specify prebuilt vc-intrinsics
2022-02-17 11:36:56 +01:00
bd521cbe37 Consider VC BiF feature always enabled.
It is the revert of "add option to disable VC BiF, disable by default
prior to LLVM-9" plus some additional cleaning. This change
significantly simplifies and reduces the code. Though now there's no way
to build the project with a LLVM prior to 9th version.
2022-01-11 15:37:47 +01:00
3fde0acae8 Remove SPIRVDLL from build
Remove SPIRVDLL component from igc build flow. Switch to in-igc build.
2021-12-03 16:57:29 +01:00
7309126ed7 Do not build SPIRVDLL in VC Khronos SPIRV mode
Guard build of SPIRVDLL under flag for linking of VC with non-modified
Khronos SPIRV translator.
2021-09-08 15:49:59 +02:00
f315a07b33 update copyright headers in IGC VectorCompiler 2021-05-18 09:40:01 +02:00
c7b8a70699 Move common LLVM build setup to one place
Move common code to igc_llvm.cmake:
add LLVM include directories and supress warnings;
add LLVM modules and include flags for tablgen.
Remove all of these from other places.
2021-04-22 13:00:26 +02:00
45b3a9f058 Create VCDriver library with compilation manager code
Move GenXWrapper and SPIRVWrapper to this library.
Remove no more needed dependencies from VCCodeGen.
2021-04-14 15:37:33 +02:00
179fd66b90 Simplify lit testing infrastructure
Use small lit config without unnecessary dependencies.
2021-04-14 15:15:31 +02:00
8de7045c14 Redesign LLVM flags in llvm.cmake
Use one variable for mode selection instead of
three different. Make modes mutually exclusive.
Move system LLVM mode to suboption of prebuilds mode.
2021-04-13 12:50:51 +02:00
35213a5899 Do not use internal visa header in VC 2021-04-03 07:43:16 +02:00
44a5b97036 Simplify work with vc intrinsics
In external build vc intrinsics provides
library with correct target_include_directories
and other things so no need to do anything on IGC side.
2021-03-30 19:37:17 +02:00
a76316bfde add option to disable VC BiF, disable by default prior to LLVM-9 2021-03-23 12:54:47 +01:00
ef992e1d05 Separate cmake utilities from main IGC list
This greatly simplifies main CMakeLists.txt.
2021-03-22 19:40:30 +01:00
3f91acf80b Unify tblgen detection in VC
Both source and packages provide tblgen target so use it directly.
2021-03-19 17:44:07 +01:00
099a2e3fbd initial implementation of cm-cl library 2021-03-15 21:31:09 +01:00
b0596c5027 Refactor work with LLVM in VC
Remove redundant commands that are already handled by top-level cmake.
2021-03-11 19:04:38 +01:00
74b09836c3 VC cmake cleanup
Remove some unused outdated code.
2021-03-10 12:02:59 +01:00
679efc8932 Bump cmake version for IGC to 3.13.4
Documentation already lists this as requirement.

Additionally, cleanup some policies:
CMP0054 -- expansion was accidental and did not affect anything.
CMP0057, CMP0058, CMP0065 -- already set to NEW with required version.
2021-03-10 10:22:50 +01:00
f05922081c update copyright headers in IGC VectorCompiler 2021-02-18 10:40:46 +01:00
d2e5d3570f Removed external dependency on llvm_patches and improved llvm setup in project 2021-02-08 16:04:16 +01:00
70fe39a1b1 Add interface target for vc intrinsics headers
This allows propagation of dependencies to another libraries
with just target_link_libraries command.
2021-01-25 12:23:58 +01:00
331c4e4dd0 Disable double-inline warning coming from StringRef.h 2021-01-22 15:45:14 +01:00
07f73e00be Add SPIRVDLL_SRC variable which takes prepared sprivdll sources
Fix indents
2020-11-26 12:19:50 +01:00
723e356ad0 Simplifying building workspace/instruction.
Change-Id: Icc8e5301ddaab2e8e2d2d94cfb93237a18de364d
2020-10-27 05:04:06 -07:00
a29fd44863 Fix some clang compilation errors.
Change-Id: I7be872406285fb8a8a92ee51d7bda265c38d1ab0
2020-10-13 23:01:23 -07:00
57eaaae1c4 Remove VC-related code from dllInterfaceCompute
Move this code to igcdeps library. Reformat everything to
LLVM style as git blame is ruined anyway.

Change-Id: If9d5156187b640ec939b3f36a59b42b9eb982aeb
2020-10-06 09:57:03 -07:00
66a6675014 Add igcdeps library in VC
Add special separate library for IGC depended things that
used in VC. Move some vc-related parts from other IGC into
this library. Set proper dependencies on this library for
components that use it.

Without this library include directories and dependecies are
not set correctly in different configurations.

Change-Id: I183954dbdad7fdc320af7918f7bf4dc1301de6b6
2020-09-07 14:19:07 -07:00
5faa84b708 Fix system LLVM handling in CMFE
Correctly handle detection of system LLVM. Use LLVM target
instead of static libraries when LLVM was configured with
LLVM_LINK_LLVM_DYLIB.

Change-Id: Ifed0886d6aefb79ecbdd34d0fdddd027fd2d0aaa
2020-07-28 20:21:08 -07:00
9f3bcf54fb Fix system LLVM handling in VC
Correctly handle detection of system LLVM. Use LLVM target
instead of static libraries when LLVM was configured with
LLVM_LINK_LLVM_DYLIB.

Change-Id: I7a42878ddb984a3e609c7de63483e2d32cefd9e8
2020-07-23 11:06:27 -07:00
3fdb587d8b Open-source whole Vector Compute backend
Change-Id: Id22b13722d4c79f70e4b0d1629510526d8dcf2e2
2020-07-07 11:38:03 -07:00