Bug 95573 - pushconstants demo fails due to unhandled SPIR-V decoration
Summary: pushconstants demo fails due to unhandled SPIR-V decoration
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Vulkan/intel (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Intel 3D Bugs Mailing List
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-23 22:46 UTC by Nanley Chery
Modified: 2016-05-27 00:20 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Nanley Chery 2016-05-23 22:46:50 UTC
The Sascha pushconstants demo fails on Mesa 11.3.0-devel (git-62c728f)

App source: https://github.com/SaschaWillems/Vulkan/tree/master/pushconstants

Failure message:
src/compiler/spirv/vtn_variables.c:1047: var_decoration_cb:
Assertion `!"Unhandled variable decoration"' failed.

Debug information:
(gdb) p *dec
$1 = {next = 0x0, scope = -1, literals = 0x8cbd38, group = 0x0, {decoration = SpvDecorationArrayStride,
    exec_mode = SpvExecutionModePixelCenterInteger}}
Comment 1 Nanley Chery 2016-05-23 23:23:57 UTC
Here's the full backtrace:

#0  0x00007ffff5ae7295 in raise () from /usr/lib/libc.so.6
#1  0x00007ffff5ae86da in abort () from /usr/lib/libc.so.6
#2  0x00007ffff5ae0297 in __assert_fail_base () from /usr/lib/libc.so.6
#3  0x00007ffff5ae0342 in __assert_fail () from /usr/lib/libc.so.6
#4  0x00007ffff775bb4c in var_decoration_cb (b=0x7dba80, val=0x8d08e8, member=-1, dec=0x7d4ba0, void_var=0x8a3e60) at ../../../../src/compiler/spirv/vtn_variables.c:1047
#5  0x00007ffff7746a33 in _foreach_decoration_helper (b=0x7dba80, base_value=0x8d08e8, parent_member=-1, value=0x8d08e8, cb=0x7ffff775b5c5 <var_decoration_cb>, data=0x8a3e60)
    at ../../../../src/compiler/spirv/spirv_to_nir.c:278
#6  0x00007ffff7746a91 in vtn_foreach_decoration (b=0x7dba80, value=0x8d08e8, cb=0x7ffff775b5c5 <var_decoration_cb>, data=0x8a3e60) at ../../../../src/compiler/spirv/spirv_to_nir.c:293
#7  0x00007ffff775c409 in vtn_handle_variables (b=0x7dba80, opcode=SpvOpVariable, w=0x8cc070, count=4) at ../../../../src/compiler/spirv/vtn_variables.c:1249
#8  0x00007ffff774d2c4 in vtn_handle_variable_or_type_instruction (b=0x7dba80, opcode=SpvOpVariable, w=0x8cc070, count=4) at ../../../../src/compiler/spirv/spirv_to_nir.c:2409
#9  0x00007ffff77467b7 in vtn_foreach_instruction (b=0x7dba80, start=0x8cbe4c, end=0x8cc534, handler=0x7ffff774d21b <vtn_handle_variable_or_type_instruction>)
    at ../../../../src/compiler/spirv/spirv_to_nir.c:215
#10 0x00007ffff774d78c in spirv_to_nir (words=0x8cbe4c, word_count=721, spec=0x0, num_spec=0, stage=MESA_SHADER_VERTEX, entry_point_name=0x45caba "main", options=0x7ffff77e3f40 <vector_nir_options_gen6>)
    at ../../../../src/compiler/spirv/spirv_to_nir.c:2697
#11 0x00007ffff72b251d in anv_shader_compile_to_nir (device=0x7b8510, module=0x8cb9d0, entrypoint_name=0x45caba "main", stage=MESA_SHADER_VERTEX, spec_info=0x0)
    at ../../../../../src/intel/vulkan/anv_pipeline.c:136
#12 0x00007ffff72b2b62 in anv_pipeline_compile (pipeline=0x8cce40, module=0x8cb9d0, entrypoint=0x45caba "main", stage=MESA_SHADER_VERTEX, spec_info=0x0, prog_data=0x7fffffffd260, map=0x7fffffffdc90)
    at ../../../../../src/intel/vulkan/anv_pipeline.c:315
#13 0x00007ffff72b300a in anv_pipeline_compile_vs (pipeline=0x8cce40, cache=0x8be860, info=0x7fffffffe420, module=0x8cb9d0, entrypoint=0x45caba "main", spec_info=0x0)
    at ../../../../../src/intel/vulkan/anv_pipeline.c:446
#14 0x00007ffff72b4f78 in anv_pipeline_init (pipeline=0x8cce40, device=0x7b8510, cache=0x8be860, pCreateInfo=0x7fffffffe420, extra=0x0, alloc=0x7b8518) at ../../../../../src/intel/vulkan/anv_pipeline.c:1172
#15 0x00007ffff7798b37 in gen75_graphics_pipeline_create (_device=0x7b8510, cache=0x8be860, pCreateInfo=0x7fffffffe420, extra=0x0, pAllocator=0x0, pPipeline=0x699e58)
    at ../../../../../src/intel/vulkan/gen7_pipeline.c:203
#16 0x00007ffff72b5378 in anv_graphics_pipeline_create (_device=0x7b8510, _cache=0x8be860, pCreateInfo=0x7fffffffe420, extra=0x0, pAllocator=0x0, pPipeline=0x699e58)
    at ../../../../../src/intel/vulkan/anv_pipeline.c:1279
#17 0x00007ffff72b5495 in anv_CreateGraphicsPipelines (_device=0x7b8510, pipelineCache=0x8be860, count=1, pCreateInfos=0x7fffffffe420, pAllocator=0x0, pPipelines=0x699e58)
    at ../../../../../src/intel/vulkan/anv_pipeline.c:1303
#18 0x000000000043546b in VulkanExample::preparePipelines (this=0x6993e0) at /home/nchery/repos/github/Vulkan/pushconstants/pushconstants.cpp:440
#19 0x0000000000435cca in VulkanExample::prepare (this=0x6993e0) at /home/nchery/repos/github/Vulkan/pushconstants/pushconstants.cpp:486
#20 0x0000000000433592 in main (argc=1, argv=0x7fffffffe8d8) at /home/nchery/repos/github/Vulkan/pushconstants/pushconstants.cpp:564
Comment 2 Jason Ekstrand 2016-05-27 00:20:20 UTC
This is working now as of reasonable SPIR-V changes.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.