intel / intel/llvm

CodeGenSYCL/simple-sycl-virtual-function.cpp failing in post-commit

Open Beginner friendly
#22,400 0 comments 0 reactions 0 assignees View on GitHub
bug confirmed
Dominant language
LLVM
Stars
1.5k
Forks
854
Avg merge
3d 17h
Merged PRs (30d)
137

Description

### Describe the bug

https://github.com/intel/llvm/actions/runs/27963990687/job/82752810612

```
FAIL: Clang :: CodeGenSYCL/simple-sycl-virtual-function.cpp (12781 of 25891)
******************** TEST 'Clang :: CodeGenSYCL/simple-sycl-virtual-function.cpp' FAILED ********************
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 6
/__w/llvm/llvm/build/bin/clang -cc1 -internal-isystem /__w/llvm/llvm/build/lib/clang/23/include -nostdsysteminc -triple spir64 -fsycl-is-device -emit-llvm /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp -o - | /__w/llvm/llvm/build/bin/FileCheck /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp --implicit-check-not _ZTI4Base --implicit-check-not _ZTI8Derived1 -check-prefix VTABLE
# executed command: /__w/llvm/llvm/build/bin/clang -cc1 -internal-isystem /__w/llvm/llvm/build/lib/clang/23/include -nostdsysteminc -triple spir64 -fsycl-is-device -emit-llvm /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp -o -
# executed command: /__w/llvm/llvm/build/bin/FileCheck /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp --implicit-check-not _ZTI4Base --implicit-check-not _ZTI8Derived1 -check-prefix VTABLE
# .---command stderr------------
# | /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp:12:12: error: VTABLE: expected string not found in input
# | // VTABLE: @_ZTV8Derived1 = linkonce_odr unnamed_addr addrspace(1) constant { [3 x ptr addrspace(4)] } { [3 x ptr addrspace(4)] [ptr addrspace(4) null, ptr addrspace(4) null, ptr addrspace(4) addrspacecast (ptr @_ZN8Derived17displayEv to ptr addrspace(4))] }, comdat, align 8
# | ^
# | :1:1: note: scanning from here
# | ; ModuleID = '/__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp'
# | ^
# | :23:1: note: possible intended match here
# | @_ZTV8Derived1 = linkonce_odr addrspace(1) constant { [3 x ptr addrspace(4)] } { [3 x ptr addrspace(4)] [ptr addrspace(4) null, ptr addrspace(4) null, ptr addrspace(4) addrspacecast (ptr @_ZN8Derived17displayEv to ptr addrspace(4))] }, comdat, align 8
# | ^
# |
# | Input file:
# | Check file: /__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp
# |
# | -dump-input=help explains the following input dump.
# |
# | Input was:
# | <<<<<<
# | 1: ; ModuleID = '/__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp'
# | check:12'0 X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# | 2: source_filename = "/__w/llvm/llvm/src/clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp"
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 3: target datalayout = "e-i64:64-v16:16-v24:32-v32:32-v48:64-v96:128-v192:256-v256:256-v512:512-v1024:1024-n8:16:32:64-G1"
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 4: target triple = "spir64"
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~
# | 5:
# | check:12'0 ~
# | 6: %class.Derived1 = type { %class.Base }
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | .
# | .
# | .
# | 18:
# | check:12'0 ~
# | 19: $_ZTV8Derived1 = comdat any
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 20:
# | check:12'0 ~
# | 21: $_ZTV4Base = comdat any
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~
# | 22:
# | check:12'0 ~
# | 23: @_ZTV8Derived1 = linkonce_odr addrspace(1) constant { [3 x ptr addrspace(4)] } { [3 x ptr addrspace(4)] [ptr addrspace(4) null, ptr addrspace(4) null, ptr addrspace(4) addrspacecast (ptr @_ZN8Derived17displayEv to ptr addrspace(4))] }, comdat, align 8
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:12'1 ? possible intended match
# | 24: @_ZTV4Base = linkonce_odr addrspace(1) constant { [3 x ptr addrspace(4)] } { [3 x ptr addrspace(4)] [ptr addrspace(4) null, ptr addrspace(4) null, ptr addrspace(4) addrspacecast (ptr @_ZN4Base7displayEv to ptr addrspace(4))] }, comdat, align 8
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 25:
# | check:12'0 ~
# | 26: ; Function Attrs: convergent mustprogress noinline norecurse nounwind optnone
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 27: define linkonce_odr spir_func void @_ZN4Base7displayEv(ptr addrspace(4) noundef align 8 dereferenceable_or_null(8) %this) unnamed_addr #0 comdat align 2 {
# | check:12'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | 28: entry:
# | check:12'0 ~~~~~~~
# | .
# | .
# | .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

```

### To reproduce

1. Include a code snippet that is as short as possible
2. Specify the command which should be used to compile the program
3. Specify the command which should be used to launch the program
4. Indicate what is wrong and what was expected

### Environment

- OS: [e.g Windows/Linux]
- Target device and vendor: [e.g. Intel GPU]
- DPC++ version: [e.g. commit hash or output of `clang++ --version`]
- Dependencies version: [e.g. the output of `sycl-ls --verbose`]

### Additional context

_No response_

Contributor guide

Open the contributing guide

Research direction

Start with clang/test/CodeGenSYCL/simple-sycl-virtual-function.cpp and run the failing FileCheck invocation from the report. Compare the VTABLE expectation with the generated @_ZTV8Derived1 output, then determine the intended representation and update the test or compiler behavior accordingly. Done means the test passes in the post-commit configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, testing-qa
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.