[llvm] [LoopVectorize] Add support for reverse loops in isDereferenceableAndAlignedInLoop (PR #96752)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 15 05:46:42 PST 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `sanitizer-x86_64-linux-fast` running on `sanitizer-buildbot3` while building `llvm` at step 2 "annotate".

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

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

```
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 88315 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: LLVM-Unit :: Analysis/./AnalysisTests/81/171 (74075 of 88315)
******************** TEST 'LLVM-Unit :: Analysis/./AnalysisTests/81/171' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests-LLVM-Unit-3662756-81-171.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=171 GTEST_SHARD_INDEX=81 /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests
--

Note: This is test shard 82 of 171.
[==========] Running 4 tests from 4 test suites.
[----------] Global test environment set-up.
[----------] 1 test from DDGTest
[ RUN      ] DDGTest.getDependencies
[       OK ] DDGTest.getDependencies (23 ms)
[----------] 1 test from DDGTest (24 ms total)

[----------] 1 test from LoadsTest
[ RUN      ] LoadsTest.IsDerefReadOnlyLoop
/home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:56: runtime error: reference binding to null pointer of type 'SmallVectorImpl<const SCEVPredicate *>'
    #0 0x5bd81dd55483 in llvm::isDereferenceableAndAlignedInLoop(llvm::LoadInst*, llvm::Loop*, llvm::ScalarEvolution&, llvm::DominatorTree&, llvm::AssumptionCache*, llvm::SmallVectorImpl<llvm::SCEVPredicate const*>*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:10
    #1 0x5bd81dd5a26c in llvm::isDereferenceableReadOnlyLoop(llvm::Loop*, llvm::ScalarEvolution*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::SmallVectorImpl<llvm::SCEVPredicate const*>*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:819:14
    #2 0x5bd81d6f4c8a in LoadsTest_IsDerefReadOnlyLoop_Test::TestBody()::$_0::operator()(llvm::Function*) const /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/unittests/Analysis/LoadsTest.cpp:198:12
    #3 0x5bd81d6f421e in LoadsTest_IsDerefReadOnlyLoop_Test::TestBody() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/unittests/Analysis/LoadsTest.cpp:201:3
    #4 0x5bd820ebb9bc in testing::Test::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:2687:5
    #5 0x5bd820ebe454 in testing::TestInfo::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:2836:11
    #6 0x5bd820ec01ef in testing::TestSuite::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:3015:30
    #7 0x5bd820ee27db in testing::internal::UnitTestImpl::RunAllTests() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:5920:44
    #8 0x5bd820ee0d20 in testing::UnitTest::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:5484:10
    #9 0x5bd820e81dbe in RUN_ALL_TESTS /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/include/gtest/gtest.h:2317:73
    #10 0x5bd820e81dbe in main /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/UnitTestMain/TestMain.cpp:55:10
    #11 0x74616b42a3b7  (/lib/x86_64-linux-gnu/libc.so.6+0x2a3b7) (BuildId: 5f3f024b472f38389da3a2f567b3d0eaa8835ca2)
    #12 0x74616b42a47a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a47a) (BuildId: 5f3f024b472f38389da3a2f567b3d0eaa8835ca2)
    #13 0x5bd81d3664e4 in _start (/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/AnalysisTests+0x3b4d4e4)

SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:56 

--
exit: 1
--
shard JSON output does not exist: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests-LLVM-Unit-3662756-81-171.json
Step 10 (stage2/asan_ubsan check) failure: stage2/asan_ubsan check (failure)
...
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 88315 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: LLVM-Unit :: Analysis/./AnalysisTests/81/171 (74075 of 88315)
******************** TEST 'LLVM-Unit :: Analysis/./AnalysisTests/81/171' FAILED ********************
Script(shard):
--
GTEST_OUTPUT=json:/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests-LLVM-Unit-3662756-81-171.json GTEST_SHUFFLE=0 GTEST_TOTAL_SHARDS=171 GTEST_SHARD_INDEX=81 /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests
--

Note: This is test shard 82 of 171.
[==========] Running 4 tests from 4 test suites.
[----------] Global test environment set-up.
[----------] 1 test from DDGTest
[ RUN      ] DDGTest.getDependencies
[       OK ] DDGTest.getDependencies (23 ms)
[----------] 1 test from DDGTest (24 ms total)

[----------] 1 test from LoadsTest
[ RUN      ] LoadsTest.IsDerefReadOnlyLoop
/home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:56: runtime error: reference binding to null pointer of type 'SmallVectorImpl<const SCEVPredicate *>'
    #0 0x5bd81dd55483 in llvm::isDereferenceableAndAlignedInLoop(llvm::LoadInst*, llvm::Loop*, llvm::ScalarEvolution&, llvm::DominatorTree&, llvm::AssumptionCache*, llvm::SmallVectorImpl<llvm::SCEVPredicate const*>*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:10
    #1 0x5bd81dd5a26c in llvm::isDereferenceableReadOnlyLoop(llvm::Loop*, llvm::ScalarEvolution*, llvm::DominatorTree*, llvm::AssumptionCache*, llvm::SmallVectorImpl<llvm::SCEVPredicate const*>*) /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:819:14
    #2 0x5bd81d6f4c8a in LoadsTest_IsDerefReadOnlyLoop_Test::TestBody()::$_0::operator()(llvm::Function*) const /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/unittests/Analysis/LoadsTest.cpp:198:12
    #3 0x5bd81d6f421e in LoadsTest_IsDerefReadOnlyLoop_Test::TestBody() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/unittests/Analysis/LoadsTest.cpp:201:3
    #4 0x5bd820ebb9bc in testing::Test::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:2687:5
    #5 0x5bd820ebe454 in testing::TestInfo::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:2836:11
    #6 0x5bd820ec01ef in testing::TestSuite::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:3015:30
    #7 0x5bd820ee27db in testing::internal::UnitTestImpl::RunAllTests() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:5920:44
    #8 0x5bd820ee0d20 in testing::UnitTest::Run() /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/src/gtest.cc:5484:10
    #9 0x5bd820e81dbe in RUN_ALL_TESTS /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/googletest/include/gtest/gtest.h:2317:73
    #10 0x5bd820e81dbe in main /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/third-party/unittest/UnitTestMain/TestMain.cpp:55:10
    #11 0x74616b42a3b7  (/lib/x86_64-linux-gnu/libc.so.6+0x2a3b7) (BuildId: 5f3f024b472f38389da3a2f567b3d0eaa8835ca2)
    #12 0x74616b42a47a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2a47a) (BuildId: 5f3f024b472f38389da3a2f567b3d0eaa8835ca2)
    #13 0x5bd81d3664e4 in _start (/home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/AnalysisTests+0x3b4d4e4)

SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior /home/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/Loads.cpp:314:56 

--
exit: 1
--
shard JSON output does not exist: /home/b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/unittests/Analysis/./AnalysisTests-LLVM-Unit-3662756-81-171.json

```

</details>

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


More information about the llvm-commits mailing list