Commit c0ccad9
gn: Disable function UBsan check
KhronosGroup/Vulkan-Hpp#2020 added `vk::PFN_...` function pointer
types as the preferred function pointers used in vulkan.hpp structs
and functions.
These function pointer types use C++-styled types for the function
arguments and return values, so the compiler treats them as types
different from the C-styled "PFN_...` function pointers types.
Vulkan-Hpp guarantees that they are binary identical during compile
time, but UBsan's function sanitizer trigger a "function pointer
type different" runtime error when these function pointers are invoked
in the Vulkan-Loader (for example, debug_utils.c and allocation.c).
Thus, we need to disable the function sanitizer from the Vulkan-Loader
so that Vulkan applications created using Vulkan-Hpp can run correctly
when UBsan is enabled.
Test: Vulkan examples (https://fuchsia.googlesource.com/fuchsia/+/
main/src/graphics/tests/common/test_vkcontext.cc) didn't crash on
Fuchsia core.x64-asan build.
Bug: https://fxbug.dev/378964821
Change-Id: I8406daa884e741dbc8ade8c0e402550c450858e01 parent b4b6b14 commit c0ccad9
1 file changed
+14
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| 80 | + | |
80 | 81 | | |
81 | | - | |
| 82 | + | |
82 | 83 | | |
83 | 84 | | |
84 | 85 | | |
| |||
90 | 91 | | |
91 | 92 | | |
92 | 93 | | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
93 | 106 | | |
94 | 107 | | |
95 | 108 | | |
| |||
0 commit comments