SPIRV-Tools/tools
Karol Herbst e99a5c033e
spirv-link: allow linking functions with different pointer arguments (#5534)
* linker: run dedup earlier

Otherwise `linkings_to_do` might end up with stale IDs.

* linker: allow linking functions with different pointer arguments

Since llvm-17 there are no typed pointers and hte SPIRV-LLVM-Translator
doesn't know the function signature of imported functions.

I'm investigating different ways of solving this problem and adding an
option to work around it inside `spirv-link` is one of those.

The code is almost complete, just I'm having troubles constructing the
bitcast to cast the pointer parameters to the final type.

Closes: https://github.com/KhronosGroup/SPIRV-LLVM-Translator/issues/2153

* test/linker: add tests to test the AllowPtrTypeMismatch feature
2024-07-24 08:38:19 -04:00
..
as tools: refactorize tools flags parsing. (#5111) 2023-02-27 18:45:14 +01:00
cfg tools: refactorize tools flags parsing. (#5111) 2023-02-27 18:45:14 +01:00
diff diff: refactorize flag parsing (#5133) 2023-03-03 16:55:00 +01:00
dis spirv-dis: Add --nested-indent and --reorder-blocks (#5671) 2024-06-17 09:54:18 -04:00
emacs Define variable to skip installation 2017-07-04 12:24:44 -04:00
fuzz Remove uses of std::system(nullptr) (#5494) 2023-11-30 17:05:25 -05:00
lesspipe tools/lesspipe: Allow generic shell (#2255) 2018-12-27 15:06:37 -05:00
link spirv-link: allow linking functions with different pointer arguments (#5534) 2024-07-24 08:38:19 -04:00
lint linter: refactorize linter flag parsing (#5134) 2023-03-02 15:17:34 +01:00
objdump Implement source extraction logic for spirv-objdump (#5150) 2023-03-22 23:57:18 +01:00
opt opt: split composite from array flattening (#5733) 2024-07-19 11:48:21 -04:00
reduce Remove uses of std::system(nullptr) (#5494) 2023-11-30 17:05:25 -05:00
sva SPV_KHR_quad_control (#5547) 2024-01-26 15:49:56 -05:00
util Add explicit deduction guide for FlagRegistration (#5141) 2023-03-07 16:44:56 -05:00
val spirv-val: Fix indentation of --version output (#5686) 2024-05-30 11:01:35 -04:00
CMakeLists.txt Implement source extraction logic for spirv-objdump (#5150) 2023-03-22 23:57:18 +01:00
io.h Flush stdout before changing mode back to text (#5477) 2023-11-15 17:02:00 +00:00