Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failing lit-test func_template_nontype_3.ispc #2852

Open
nurmukhametov opened this issue May 13, 2024 · 3 comments
Open

Failing lit-test func_template_nontype_3.ispc #2852

nurmukhametov opened this issue May 13, 2024 · 3 comments
Assignees

Comments

@nurmukhametov
Copy link
Collaborator

There is a lit-test func_template_nontype_3.ispc that fails in both my environments (Linux, Windows) with the following error:

>.\bin\ispc  C:\workspace\ispc\tests\lit-tests\func_template_nontype_3.ispc --emit-llvm-text --target=host --nostdlib -o - | c:\workspace\llvm-17.0-lto-ass\bin\FileCheck C:\workspace\ispc\tests\lit-tests\func_template_nontype_3.ispc
C:\workspace\ispc\tests\lit-tests\func_template_nontype_3.ispc:11:11: error: CHECK: expected string not found in input
// CHECK: partial_inner_all_outer:
          ^
<stdin>:43:56: note: scanning from here
define linkonce_odr void @foo2___vyiCuni4Cuni8Cuni64___uniun_3C_uni_3E_un_3C_uni_3E_(i32 %alpha, i32* noalias %x, i32* noalias %y, <16 x i1> %__mask) local_unnamed_addr #4 {
                                                       ^
<stdin>:45:18: note: possible intended match here
 %alpha_load_broadcast = insertelement <16 x i32> undef, i32 %alpha, i64 0
                 ^

Input file: <stdin>
Check file: C:\workspace\ispc\tests\lit-tests\func_template_nontype_3.ispc

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           38:  %add_x_load5_offset_load_y_load11_offset_load = add nsw <16 x i32> %3, %1
           39:  ret <16 x i32> %add_x_load5_offset_load_y_load11_offset_load
           40: }
           41:
           42: ; Function Attrs: noinline nounwind uwtable
           43: define linkonce_odr void @foo2___vyiCuni4Cuni8Cuni64___uniun_3C_uni_3E_un_3C_uni_3E_(i32 %alpha, i32* noalias %x, i32* noalias %y, <16 x i1> %__mask) local_unnamed_addr #4 {
check:11'0                                                            X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
           44: allocas:
check:11'0     ~~~~~~~~~
           45:  %alpha_load_broadcast = insertelement <16 x i32> undef, i32 %alpha, i64 0
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:11'1                      ?                                                          possible intended match
           46:  %alpha_load_broadcast26 = shufflevector <16 x i32> %alpha_load_broadcast, <16 x i32> undef, <16 x i32> zeroinitializer
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           47:  %x_load_ptr2int_2void = bitcast i32* %x to i8*
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           48:  %res_1.i = tail call <16 x i32> @llvm.x86.avx512.mask.gather.dpi.512(<16 x i32> undef, i8* %x_load_ptr2int_2void, <16 x i32> <i32 0, i32 16, i32 32, i32 48, i32 64, i32 80, i32 96, i32 112, i32 128, i32 144, i32 160, i32 176, i32 192, i32 208, i32 224, i32 240>, <16 x i1> <i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true, i1 true>, i32 1)
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           49:  %mul_alpha_load_broadcast26_x_load_offset_load = mul nsw <16 x i32> %res_1.i, %alpha_load_broadcast26
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           50:  %y_load_ptr2int_2void = bitcast i32* %y to i8*
check:11'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

But it is green in CI.

@dbabokin
Copy link
Collaborator

Works for me (macOS, llvm-17 built by alloy.py).

@aneshlya
Copy link
Collaborator

It also works in my environment. Could you check if --no-discard-value-names to ispc command solve the problem?

@nurmukhametov
Copy link
Collaborator Author

It also works in my environment. Could you check if --no-discard-value-names to ispc command solve the problem?

No difference. The problem is with the basic block name partial_inner_all_outer:.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants