turnip: Handle all dependencies of CmdWaitEvents2
What does this MR do and why?
The important bit of this MR addresses the Turnip portion of #10580.
Turnip's vkCmdWaitEvents2
only considered the first dependency info and ignored the rest.
This issue gave me an excuse consolidate all event-related code from both tu_device.cc/h
and tu_cmd_buffer.cc/h
into a single location. This way we're matching the structure of NVK and RADV. We no longer need to navigate between multiple files for event functions, as everything is conveniently located in one central place, while also slimming down the quite large tu_device.cc
and tu_cmd_buffer.cc
. I kept the license headers of the files I copied from.