// Copyright (c) 2016-2020 Advanced Micro Devices, Inc.
//
// SPDX-License-Identifier: CC-BY-4.0

include::{generated}/meta/{refprefix}VK_AMD_gcn_shader.txt[]

=== Other Extension Metadata

*Last Modified Date*::
    2016-05-30
*IP Status*::
    No known IP claims.
*Interactions and External Dependencies*::
  - This extension requires
    {spirv}/AMD/SPV_AMD_gcn_shader.html[`SPV_AMD_gcn_shader`]
*Contributors*::
  - Dominik Witczak, AMD
  - Daniel Rakos, AMD
  - Rex Xu, AMD
  - Graham Sellers, AMD

=== Description

This extension adds support for the following SPIR-V extension in Vulkan:

  * {spirv}/AMD/SPV_AMD_gcn_shader.html[`SPV_AMD_gcn_shader`]

include::{generated}/interfaces/VK_AMD_gcn_shader.txt[]

=== Version History

 * Revision 1, 2016-05-30 (Dominik Witczak)
   - Initial draft
