New issue
Advanced search Search tips

Issue 848101 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 848104

Blocking:
issue 856360



Sign in to add a comment

Use macros to mimic Vulkan function names

Project Member Reported by cblume@chromium.org, May 31 2018

Issue description

In our OpenGL implementation we use function pointers. And we create macros to mimic the OpenGL functions. These macros call into the appropriate function pointer.

We want to do the same thing in Vulkan.
 

Comment 1 by cblume@chromium.org, May 31 2018

Blockedon: 848104

Comment 2 by cblume@chromium.org, Jun 25 2018

Blocking: 856360
Project Member

Comment 3 by bugdroid1@chromium.org, Jun 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3

commit f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3
Author: Chris Blume <cblume@chromium.org>
Date: Thu Jun 28 19:35:25 2018

Use macros for Vulkan functions

Currently, users of Vulkan need to get the global function pointer
class. And calls into those functions look like:
vulkan_function_pointers->vkCreateDevice();

Our OpenGL code hides that behind macros. This patch adds macros to
mimic the OpenGL code in Chrome.

Now that looks like:
vkCreateDevice();

BUG= 856360 , 848101 

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel
Change-Id: If3aff1719b366748b9236a9e4c9e7ec69260be18
Reviewed-on: https://chromium-review.googlesource.com/1116195
Commit-Queue: Chris Blume <cblume@chromium.org>
Reviewed-by: Antoine Labour <piman@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571226}
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/components/viz/common/gpu/vulkan_in_process_context_provider.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/generate_bindings.py
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_command_buffer.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_command_pool.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_descriptor_layout.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_descriptor_pool.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_descriptor_set.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_device_queue.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_function_pointers.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_function_pointers.h
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_image_view.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_implementation_android.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_instance.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_render_pass.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_sampler.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_shader_module.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_surface.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/vulkan_swap_chain.cc
[modify] https://crrev.com/f0fb42f5e7b27176bd1df7d1024a70cf54ab76f3/gpu/vulkan/x/vulkan_implementation_x11.cc

Comment 4 by cblume@chromium.org, Jun 28 2018

Status: Fixed (was: Assigned)

Sign in to add a comment