[llvm] [FunctionAttrs] Add the "initializes" attribute inference (PR #97373)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 18 21:41:59 PST 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `llvm-clang-x86_64-sie-ubuntu-fast` running on `sie-linux-worker` while building `llvm` at step 6 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/144/builds/11934

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'Clang :: CodeGen/X86/ms-x86-intrinsics.c' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 1: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/20/include -nostdsysteminc -Werror -ffreestanding -fms-extensions -fms-compatibility -fms-compatibility-version=17.00          -triple i686--windows -Oz -emit-llvm /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -o -          | /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -check-prefix=CHECK -check-prefix=CHECK-I386
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -check-prefix=CHECK -check-prefix=CHECK-I386
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/20/include -nostdsysteminc -Werror -ffreestanding -fms-extensions -fms-compatibility -fms-compatibility-version=17.00 -triple i686--windows -Oz -emit-llvm /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -o -
RUN: at line 4: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/20/include -nostdsysteminc -Werror -ffreestanding -fms-extensions -fms-compatibility -fms-compatibility-version=17.00          -triple x86_64--windows -Oz -emit-llvm /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -o -          | /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c --check-prefix=CHECK --check-prefix=CHECK-X64
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c --check-prefix=CHECK --check-prefix=CHECK-X64
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/clang -cc1 -internal-isystem /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/lib/clang/20/include -nostdsysteminc -Werror -ffreestanding -fms-extensions -fms-compatibility -fms-compatibility-version=17.00 -triple x86_64--windows -Oz -emit-llvm /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c -o -
/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c:174:21: error: CHECK-X64-LABEL: expected string not found in input
// CHECK-X64-LABEL: define dso_local i64 @test_mul128(i64 noundef %Multiplier, i64 noundef %Multiplicand, ptr{{[a-z_ ]*}}%HighProduct)
                    ^
<stdin>:118:83: note: scanning from here
define dso_local range(i64 0, -1) i64 @test__umulh(i64 noundef %a, i64 noundef %b) local_unnamed_addr #0 {
                                                                                  ^
<stdin>:129:1: note: possible intended match here
define dso_local i64 @test_mul128(i64 noundef %Multiplier, i64 noundef %Multiplicand, ptr nocapture noundef writeonly initializes((0, 8)) %HighProduct) local_unnamed_addr #3 {
^

Input file: <stdin>
Check file: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c

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

Input was:
<<<<<<
             1: ; ModuleID = '/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c' 
             2: source_filename = "/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/clang/test/CodeGen/X86/ms-x86-intrinsics.c" 
             3: target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128" 
             4: target triple = "x86_64-unknown-windows-msvc" 
             5:  
             6: ; Function Attrs: minsize mustprogress nofree norecurse nosync nounwind optsize willreturn memory(none) 
             7: define dso_local range(i64 -4611686016279904256, 4611686018427387905) i64 @test__emul(i32 noundef %a, i32 noundef %b) local_unnamed_addr #0 { 
label:51'0      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
label:51'1      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
             8: entry: 
             9:  %0 = sext i32 %a to i64 
check:52'0       ^~~~~~~~~~~~~~~~~~~~~~~
check:52'1       ^~                       captured var "X"
            10:  %1 = sext i32 %b to i64 
check:53'0       ^~~~~~~~~~~~~~~~~~~~~~~
check:53'1       ^~                       captured var "Y"
            11:  %2 = mul nsw i64 %1, %0 
check:54'0       ^~~~~~~~~~~~~~~~~~~~~~~
check:54'1                                with "Y" equal to "%1"
check:54'2                                with "X" equal to "%0"
check:54'3       ^~                       captured var "RES"
            12:  ret i64 %2 
...

```

</details>

https://github.com/llvm/llvm-project/pull/97373


More information about the llvm-commits mailing list