Skip to content

Commit

Permalink
Update XGL from commit: ef6c1d8
Browse files Browse the repository at this point in the history
1. Fix dEQP-VK.api.external.semaphore.opaque_fd.signal_wait_import_permanent
2. Fix dEQP-VK.spirv_assembly.instruction.compute.image_sampler.imagefetch.* hang issue.
3. Pass image format list to PAL to allow enabling DCC for certain cases.
4. llpc: Use llvm build's llvm-as and llvm-link to save driver build time
5. update merged shader implementation
  • Loading branch information
JacobHeAMD committed Jan 16, 2018
1 parent bd829ae commit 02f11b6
Show file tree
Hide file tree
Showing 71 changed files with 1,805 additions and 7,983 deletions.
12 changes: 10 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,15 @@
cmake_minimum_required(VERSION 3.5)
project(XGL VERSION 1 LANGUAGES C CXX)

### Set Default Build Type #############################################################################################
if (NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES)
message(STATUS "No build type selected, default to release")
set(CMAKE_BUILD_TYPE "Release" CACHE STRING "Build type (default Release)" FORCE)
endif()

### CMake Includes #####################################################################################################
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/../pal/cmake/Modules)
SET(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/icd/imported/pal/cmake/Modules)
include(CMakeDependentOption)
include(AmdCmakeHelper)
include(SetupAmdGlobalRoots)
Expand Down Expand Up @@ -85,7 +93,7 @@ if(ICD_GPUOPEN_DEVMODE_BUILD)
endif()

# PAL
set(XGL_PAL_PATH ${PROJECT_SOURCE_DIR}/icd/imported/pal CACHE PATH "Specify the path to the PAL project.")
set(XGL_PAL_PATH ${PROJECT_SOURCE_DIR}/../pal CACHE PATH "Specify the path to the PAL project.")
set(PAL_CLIENT_INTERFACE_MAJOR_VERSION ${ICD_PAL_CLIENT_MAJOR_VERSION} CACHE STRING "${PROJECT_NAME} override." FORCE)
set(PAL_CLIENT "VULKAN" CACHE STRING "${PROJECT_NAME} override." FORCE)

Expand All @@ -99,7 +107,7 @@ set(PAL_BUILD_GPUOPEN ${ICD_GPUOPEN_DEVMODE_BUILD} CACHE BOOL "${PROJECT_NAME} o
set(PAL_BUILD_VIDEO ${ICD_BUILD_VIDEO} CACHE BOOL "${PROJECT_NAME} override." FORCE)

# LLVM
set(XGL_LLVM_SRC_PATH ${PROJECT_SOURCE_DIR}/icd/imported/llvm CACHE PATH "Specify the path to the LLVM.")
set(XGL_LLVM_SRC_PATH ${PROJECT_SOURCE_DIR}/../llvm CACHE PATH "Specify the path to the LLVM.")

### Generator Dependencies #############################################################################################
find_package(PythonInterp 3)
Expand Down
2 changes: 0 additions & 2 deletions icd/api/include/vk_conv.h
Original file line number Diff line number Diff line change
Expand Up @@ -1730,8 +1730,6 @@ VK_INLINE uint32_t VkToPalImageCreateFlags(VkImageCreateFlags imageCreateFlags)
Pal::ImageCreateInfo palImageCreateInfo;
palImageCreateInfo.flags.u32All = 0;

palImageCreateInfo.flags.formatChangeSrd = (imageCreateFlags & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT) ? 1 : 0;
palImageCreateInfo.flags.formatChangeTgt = (imageCreateFlags & VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT) ? 1 : 0;
palImageCreateInfo.flags.cubemap = (imageCreateFlags & VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT) ? 1 : 0;
palImageCreateInfo.flags.prt = (imageCreateFlags & VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT) ? 1 : 0;
palImageCreateInfo.flags.invariant = (imageCreateFlags & VK_IMAGE_CREATE_ALIAS_BIT_KHR) ? 1 : 0;
Expand Down
2 changes: 2 additions & 0 deletions icd/api/include/vk_device.h
Original file line number Diff line number Diff line change
Expand Up @@ -479,6 +479,8 @@ class Device
uint32_t GetPipelineCacheExpectedEntryCount();
void DecreasePipelineCacheCount();

VK_INLINE VirtualStackAllocator* GetStackAllocator() { return m_pStackAllocator; }

protected:
Device(
uint32_t deviceCount,
Expand Down
1 change: 0 additions & 1 deletion icd/api/include/vk_graphics_pipeline.h
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,6 @@
#include "palDepthStencilState.h"
#include "palMsaaState.h"
#include "palPipeline.h"

#include "llpc.h"

namespace vk
Expand Down
1 change: 1 addition & 0 deletions icd/api/include/vk_pipeline_layout.h
Original file line number Diff line number Diff line change
Expand Up @@ -153,6 +153,7 @@ class PipelineLayout : public NonDispatchable<VkPipelineLayout, PipelineLayout>
const VkPipelineVertexInputStateCreateInfo* pVertexInput,
Llpc::PipelineShaderInfo* pShaderInfo,
VbBindingInfo* pVbInfo) const;

static VkResult Create(
const Device* pDevice,
const VkPipelineLayoutCreateInfo* pCreateInfo,
Expand Down
7 changes: 6 additions & 1 deletion icd/api/include/vk_shader.h
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,12 @@ class ShaderModule : public NonDispatchable<VkShaderModule, ShaderModule>

Pal::ShaderHash GetCodeHash(const char* pEntryPoint) const;

const void* GetLlpcShaderData() const { return m_llpcConvertOut.pModuleData; }
const void* GetShaderData(bool isLlpc) const
{
// If both SCPC and LLPC build are defined, select module by input flag
// Otherwise, the input flag is ignored.
return m_llpcConvertOut.pModuleData;
}

protected:
VkResult Init(const Device* pDevice);
Expand Down
6 changes: 3 additions & 3 deletions icd/api/llpc/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -169,10 +169,8 @@ target_sources(llpc PRIVATE
patch/llpcCodeGenManager.cpp
patch/llpcFragColorExport.cpp
patch/llpcPatch.cpp
patch/llpcPatchDeadFuncRemove.cpp
patch/llpcPatchDescriptorLoad.cpp
patch/llpcPatchEntryPointMutate.cpp
patch/llpcPatchExternalLibLink.cpp
patch/llpcPatchInOutImportExport.cpp
patch/llpcPatchBufferOp.cpp
patch/llpcPatchImageOp.cpp
Expand Down Expand Up @@ -230,6 +228,7 @@ target_sources(llpc PRIVATE
util/llpcPassExternalLibLink.cpp
util/llpcPassNonNativeFuncRemove.cpp
util/llpcPipelineDumper.cpp
util/llpcUtil.cpp
)

### LLPC Auto-generated Files ##########################################################################################
Expand All @@ -249,15 +248,16 @@ set(GEN_GLSL_EMU_LIB_DEPS
${OP_EMU_LIB_GEN_DIR}/glslImageOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslInlineConstOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslMatrixOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslMatrixOpEmuF16.ll
${OP_EMU_LIB_GEN_DIR}/glslMatrixOpEmuF64.ll
${OP_EMU_LIB_GEN_DIR}/glslPushConstOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslNullFsEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslSharedVarOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslSpecialOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/glslSpecialOpEmuF16.ll
${OP_EMU_LIB_GEN_DIR}/gfx6/glslArithOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/gfx6/glslNoOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/gfx9/glslArithOpEmu.ll
${OP_EMU_LIB_GEN_DIR}/gfx9/glslMatrixOpEmuF16.ll
${OP_EMU_LIB_GEN_DIR}/script/genGlslArithOpEmuCode.py
${OP_EMU_LIB_GEN_DIR}/script/genGlslArithOpEmuCode.txt
${OP_EMU_LIB_GEN_DIR}/script/genGlslArithOpEmuCodeF64.txt
Expand Down
Loading

0 comments on commit 02f11b6

Please sign in to comment.