[llvm-bugs] [Bug 48930] New: CodeGen/profile-filter.c test fails on 32-bit x86

via llvm-bugs llvm-bugs at lists.llvm.org
Thu Jan 28 16:58:28 PST 2021


https://bugs.llvm.org/show_bug.cgi?id=48930

            Bug ID: 48930
           Summary: CodeGen/profile-filter.c test fails on 32-bit x86
           Product: new-bugs
           Version: trunk
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: new bugs
          Assignee: unassignedbugs at nondot.org
          Reporter: mgorny at gentoo.org
                CC: htmldeveloper at gmail.com, llvm-bugs at lists.llvm.org,
                    phosek at chromium.org
            Blocks: 48902

Created attachment 24435
  --> https://bugs.llvm.org/attachment.cgi?id=24435&action=edit
sys-devel:clang-12.0.0_rc1:20210129-002231.log.xz (complete build log)

The following test fails on 32-bit x86, apparently due to expecting 64-bit
alignment:


FAIL: Clang :: CodeGen/profile-filter.c (4073 of 27194)
******************** TEST 'Clang :: CodeGen/profile-filter.c' FAILED
********************
Script:
--
: 'RUN: at line 1';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang -emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
: 'RUN: at line 3';   echo "fun:test1" >
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-func.list
: 'RUN: at line 4';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang
-fprofile-list=/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-func.list
-emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
--check-prefix=FUNC
: 'RUN: at line 6';   echo
"src:/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c"
| sed -e 's/\\/\\\\/g' >
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-file.list
: 'RUN: at line 7';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang
-fprofile-list=/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-file.list
-emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
--check-prefix=FILE
: 'RUN: at line 9';   echo -e "[clang]\nfun:test1\n[llvm]\nfun:test2" >
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-section.list
: 'RUN: at line 10';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=llvm
-fprofile-list=/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-section.list
-emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
--check-prefix=SECTION
: 'RUN: at line 12';   echo -e "fun:test*\n!fun:test1" >
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-exclude.list
: 'RUN: at line 13';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang
-fprofile-list=/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-exclude.list
-emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
--check-prefix=EXCLUDE
: 'RUN: at line 15';   echo "!fun:test1" >
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-exclude-only.list
: 'RUN: at line 16';  
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang
-fprofile-list=/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/test/CodeGen/Output/profile-filter.c.tmp-exclude-only.list
-emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o - | /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
--check-prefix=EXCLUDE
--
Exit Code: 1

Command Output (stderr):
--
+ : 'RUN: at line 1'
+
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/clang
-cc1 -internal-isystem
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/x/y/clang-abi_x86_32.x86/bin/../../../../lib/clang/12.0.0/include
-nostdsysteminc -fprofile-instrument=clang -emit-llvm
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
-o -
+ /usr/lib/llvm/12/bin/FileCheck --allow-unused-prefixes=false
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c:31:12:
error: CHECK: expected string not found in input
 // CHECK: %pgocount = load i64, i64* getelementptr inbounds ([1 x i64], [1 x
i64]* @__profc_test1, i64 0, i64 0), align 8
           ^
<stdin>:8:223: note: scanning from here
@__profd_test1 = private global { i64, i64, i64*, i8*, i8*, i32, [2 x i16] } {
i64 3666282617048535130, i64 24, i64* getelementptr inbounds ([1 x i64], [1 x
i64]* @__profc_test1, i32 0, i32 0), i8* bitcast (i32 ()* @test1 to i8*), i8*
null, i32 1, [2 x i16] zeroinitializer }, section "__llvm_prf_data", align 8
                                                                               
                                                                               
                                                              ^
<stdin>:17:2: note: possible intended match here
 %pgocount = load i64, i64* getelementptr inbounds ([1 x i64], [1 x i64]*
@__profc_test1, i64 0, i64 0), align 4
 ^

Input file: <stdin>
Check file:
/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c

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

Input was:
<<<<<<
            1: ; ModuleID =
'/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c'
            2: source_filename =
"/var/tmp/portage/sys-devel/clang-12.0.0_rc1/work/clang/test/CodeGen/profile-filter.c"
            3: target datalayout =
"e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-f64:32:64-f80:32-n8:16:32-S128"
            4: target triple = "i686-pc-linux-gnu"
            5: 
            6: @i = dso_local global i32 0, align 4
            7: @__profc_test1 = private global [1 x i64] zeroinitializer,
section "__llvm_prf_cnts", align 8
            8: @__profd_test1 = private global { i64, i64, i64*, i8*, i8*, i32,
[2 x i16] } { i64 3666282617048535130, i64 24, i64* getelementptr inbounds ([1
x i64], [1 x i64]* @__profc_test1, i32 0, i32 0), i8* bitcast (i32 ()* @test1
to i8*), i8* null, i32 1, [2 x i16] zeroinitializer }, section
"__llvm_prf_data", align 8
check:31'0                                                                     
                                                                               
                                                                            
X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
error: no match found
            9: @__profc_test2 = private global [1 x i64] zeroinitializer,
section "__llvm_prf_cnts", align 8
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           10: @__profd_test2 = private global { i64, i64, i64*, i8*, i8*, i32,
[2 x i16] } { i64 268251779613065901, i64 24, i64* getelementptr inbounds ([1 x
i64], [1 x i64]* @__profc_test2, i32 0, i32 0), i8* bitcast (i32 ()* @test2 to
i8*), i8* null, i32 1, [2 x i16] zeroinitializer }, section "__llvm_prf_data",
align 8
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           11: @__llvm_prf_nm = private constant [19 x i8]
c"\0B\11x\DA+I-.1d,\01\92F\00\18L\03\E5", section "__llvm_prf_names", align 1
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           12: @llvm.used = appending global [3 x i8*] [i8* bitcast ({ i64,
i64, i64*, i8*, i8*, i32, [2 x i16] }* @__profd_test1 to i8*), i8* bitcast ({
i64, i64, i64*, i8*, i8*, i32, [2 x i16] }* @__profd_test2 to i8*), i8*
getelementptr inbounds ([19 x i8], [19 x i8]* @__llvm_prf_nm, i32 0, i32 0)],
section "llvm.metadata"
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           13: 
check:31'0     ~
           14: ; Function Attrs: noinline nounwind optnone
check:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           15: define dso_local i32 @test1() #0 {
check:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           16: entry:
check:31'0     ~~~~~~
           17:  %pgocount = load i64, i64* getelementptr inbounds ([1 x i64],
[1 x i64]* @__profc_test1, i64 0, i64 0), align 4
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:31'1      ?                                                              
                                                possible intended match
           18:  %0 = add i64 %pgocount, 1
check:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~
           19:  store i64 %0, i64* getelementptr inbounds ([1 x i64], [1 x
i64]* @__profc_test1, i64 0, i64 0), align 4
check:31'0    
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           20:  %1 = load i32, i32* @i, align 4
check:31'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           21:  %add = add i32 %1, 1
check:31'0     ~~~~~~~~~~~~~~~~~~~~~
           22:  ret i32 %add
check:31'0     ~~~~~~~~~~~~~
            .
            .
            .
>>>>>>

--

********************


I'm attaching the complete build log, in case it could be helpful.


Referenced Bugs:

https://bugs.llvm.org/show_bug.cgi?id=48902
[Bug 48902] [meta] 12.0.0 Release Blockers
-- 
You are receiving this mail because:
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20210129/d074209d/attachment-0001.html>


More information about the llvm-bugs mailing list