[PATCH] D91878: [CSSPGO] Pseudo probe encoding and emission.

Mitch Phillips via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Dec 10 17:00:07 PST 2020


hctim added a comment.

Hi - yep, sorry for taking a sec to comment here. It broke the sanitizer buildbots here: http://lab.llvm.org:8011/#/builders/5/builds/2269

You can learn more about how to repro the exact bot here: https://github.com/google/sanitizers/wiki/SanitizerBotReproduceBuild

I've copied the ASan errors below just for your convenience :)

  FAIL: LLVM :: Transforms/SampleProfile/pseudo-probe-emit-inline.ll (65962 of 72157)
  ******************** TEST 'LLVM :: Transforms/SampleProfile/pseudo-probe-emit-inline.ll' FAILED ********************
  Script:
  --
  : 'RUN: at line 2';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/opt < /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll -passes='pseudo-probe,cgscc(inline)' -function-sections -mtriple=x86_64-unknown-linux-gnu -S -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp
  : 'RUN: at line 3';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll < /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp --check-prefix=CHECK-IL
  : 'RUN: at line 4';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llc -pseudo-probe-for-profiling -function-sections </b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp -filetype=asm -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp1
  : 'RUN: at line 5';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll < /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp1 --check-prefix=CHECK-ASM
  : 'RUN: at line 6';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llc -pseudo-probe-for-profiling -function-sections </b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp -filetype=obj -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp2
  : 'RUN: at line 7';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-objdump --section-headers  /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp2 | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll --check-prefix=CHECK-OBJ
  : 'RUN: at line 8';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-mc -filetype=asm </b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp1 -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp3
  : 'RUN: at line 9';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll < /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp3 --check-prefix=CHECK-ASM
  : 'RUN: at line 10';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-mc -filetype=obj </b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp1 -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp4
  : 'RUN: at line 11';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-objdump --section-headers  /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit-inline.ll.tmp4 | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit-inline.ll --check-prefix=CHECK-OBJ
  --
  Exit Code: 1
  Command Output (stderr):
  --
  =================================================================
  ==13817==ERROR: LeakSanitizer: detected memory leaks
  Direct leak of 40 byte(s) in 1 object(s) allocated from:
      #0 0x462a9cd in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:99:3
      #1 0x8727eac in llvm::AsmPrinter::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:339:10
      #2 0x9b380d5 in llvm::FPPassManager::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1495:41
      #3 0x9b222a8 in runOnModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1529:41
      #4 0x9b222a8 in llvm::legacy::PassManagerImpl::run(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:542:44
      #5 0x463416f in compileModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:658:8
      #6 0x463416f in main /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:363:22
      #7 0x7fa76d5fa09a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
  Indirect leak of 1536 byte(s) in 1 object(s) allocated from:
      #0 0x462a9cd in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:99:3
      #1 0x88de0b6 in allocateBuckets /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:871:9
      #2 0x88de0b6 in llvm::DenseMap<llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >::grow(unsigned int) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:805:5
      #3 0x88ddea4 in grow /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:536:36
      #4 0x88ddea4 in llvm::detail::DenseMapPair<llvm::StringRef, unsigned long>* llvm::DenseMapBase<llvm::DenseMap<llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >, llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >::InsertIntoBucketImpl<llvm::StringRef>(llvm::StringRef const&, llvm::StringRef const&, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long>*) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:580:13
      #5 0x88dbb41 in InsertIntoBucket<const llvm::StringRef &> /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:546:17
      #6 0x88dbb41 in FindAndConstruct /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:325:13
      #7 0x88dbb41 in operator[] /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:329:12
      #8 0x88dbb41 in llvm::PseudoProbeHandler::PseudoProbeHandler(llvm::AsmPrinter*, llvm::Module*) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp:40:5
      #9 0x8727ec1 in llvm::AsmPrinter::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:339:14
      #10 0x9b380d5 in llvm::FPPassManager::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1495:41
      #11 0x9b222a8 in runOnModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1529:41
      #12 0x9b222a8 in llvm::legacy::PassManagerImpl::run(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:542:44
      #13 0x463416f in compileModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:658:8
      #14 0x463416f in main /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:363:22
      #15 0x7fa76d5fa09a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
  SUMMARY: AddressSanitizer: 1576 byte(s) leaked in 2 allocation(s).
  --
  ********************
  Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 
  FAIL: LLVM :: Transforms/SampleProfile/pseudo-probe-emit.ll (66047 of 72157)
  ******************** TEST 'LLVM :: Transforms/SampleProfile/pseudo-probe-emit.ll' FAILED ********************
  Script:
  --
  : 'RUN: at line 2';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/opt < /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll -passes=pseudo-probe -function-sections -S -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp
  : 'RUN: at line 3';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll < /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp --check-prefix=CHECK-IL
  : 'RUN: at line 4';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llc /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp -pseudo-probe-for-profiling -stop-after=pseudo-probe-inserter -o - | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll --check-prefix=CHECK-MIR
  : 'RUN: at line 5';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llc /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp -pseudo-probe-for-profiling -function-sections -filetype=asm -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp1
  : 'RUN: at line 6';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll < /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp1 --check-prefix=CHECK-ASM
  : 'RUN: at line 7';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llc /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp -pseudo-probe-for-profiling -function-sections -filetype=obj -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp2
  : 'RUN: at line 8';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-objdump --section-headers  /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp2 | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll --check-prefix=CHECK-OBJ
  : 'RUN: at line 9';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-mc /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp1 -filetype=obj -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp3
  : 'RUN: at line 10';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/llvm-objdump --section-headers  /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/test/Transforms/SampleProfile/Output/pseudo-probe-emit.ll.tmp3 | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan/bin/FileCheck --allow-unused-prefixes=false /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/Transforms/SampleProfile/pseudo-probe-emit.ll --check-prefix=CHECK-OBJ
  --
  Exit Code: 1
  Command Output (stderr):
  --
  =================================================================
  ==15119==ERROR: LeakSanitizer: detected memory leaks
  Direct leak of 40 byte(s) in 1 object(s) allocated from:
      #0 0x462a9cd in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:99:3
      #1 0x8727eac in llvm::AsmPrinter::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:339:10
      #2 0x9b380d5 in llvm::FPPassManager::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1495:41
      #3 0x9b222a8 in runOnModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1529:41
      #4 0x9b222a8 in llvm::legacy::PassManagerImpl::run(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:542:44
      #5 0x463416f in compileModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:658:8
      #6 0x463416f in main /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:363:22
      #7 0x7f642eb0909a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
  Indirect leak of 1536 byte(s) in 1 object(s) allocated from:
      #0 0x462a9cd in operator new(unsigned long) /b/s/w/ir/cache/builder/src/third_party/llvm/compiler-rt/lib/asan/asan_new_delete.cpp:99:3
      #1 0x88de0b6 in allocateBuckets /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:871:9
      #2 0x88de0b6 in llvm::DenseMap<llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >::grow(unsigned int) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:805:5
      #3 0x88ddea4 in grow /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:536:36
      #4 0x88ddea4 in llvm::detail::DenseMapPair<llvm::StringRef, unsigned long>* llvm::DenseMapBase<llvm::DenseMap<llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >, llvm::StringRef, unsigned long, llvm::DenseMapInfo<llvm::StringRef>, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long> >::InsertIntoBucketImpl<llvm::StringRef>(llvm::StringRef const&, llvm::StringRef const&, llvm::detail::DenseMapPair<llvm::StringRef, unsigned long>*) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:580:13
      #5 0x88dbb41 in InsertIntoBucket<const llvm::StringRef &> /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:546:17
      #6 0x88dbb41 in FindAndConstruct /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:325:13
      #7 0x88dbb41 in operator[] /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/DenseMap.h:329:12
      #8 0x88dbb41 in llvm::PseudoProbeHandler::PseudoProbeHandler(llvm::AsmPrinter*, llvm::Module*) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp:40:5
      #9 0x8727ec1 in llvm::AsmPrinter::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:339:14
      #10 0x9b380d5 in llvm::FPPassManager::doInitialization(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1495:41
      #11 0x9b222a8 in runOnModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1529:41
      #12 0x9b222a8 in llvm::legacy::PassManagerImpl::run(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:542:44
      #13 0x463416f in compileModule /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:658:8
      #14 0x463416f in main /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/tools/llc/llc.cpp:363:22
      #15 0x7f642eb0909a in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x2409a)
  SUMMARY: AddressSanitizer: 1576 byte(s) leaked in 2 allocation(s).
  --
  ********************
  Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. 
  ********************
  Failed Tests (2):
    LLVM :: Transforms/SampleProfile/pseudo-probe-emit-inline.ll
    LLVM :: Transforms/SampleProfile/pseudo-probe-emit.ll


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D91878/new/

https://reviews.llvm.org/D91878



More information about the llvm-commits mailing list