Skip to content

[SPIR-V] Hitting assert when compiling program with asdouble #7699

@kmpeng

Description

@kmpeng

https://godbolt.org/z/vfnqzMP9e

Discovered while running the offload-test-suite. Hitting an assert when compiling this program with spirv:

// RUN: %dxc -spirv -fspv-target-env=vulkan1.3 -T cs_6_5 %s

StructuredBuffer<uint4> Low : register(t0);
StructuredBuffer<uint4> High : register(t1);

RWStructuredBuffer<double4> Out : register(u2);

[numthreads(1,1,1)]
void main() {
  Out[1] = double4(asdouble(Low[1].xyz, High[1].xyz), asdouble(Low[1].w, High[1].w));
}
# .---command stderr------------
# | Internal compiler error: LLVM Assert
# `-----------------------------
# error: command failed with exit status: 0xe0000001
Error: assert(Val && "isa<> used on a null pointer")
File:
/home/kaitlinpeng/DirectXShaderCompiler/include/llvm/Support/Casting.h(96)
Func:   doit
Illegal instruction (core dumped)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugBug, regression, crashneeds-triageAwaiting triage

    Type

    No type

    Projects

    Status

    No status

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions