[PATCH] D53521: [X86][BMI1] X86DAGToDAGISel: select BEXTR from x << (32 - y) >> (32 - y) pattern

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 23 04:23:32 PDT 2018


lebedev.ri reopened this revision.
lebedev.ri added a subscriber: vitalybuka.
lebedev.ri added a comment.
This revision is now accepted and ready to land.

Reverted in https://reviews.llvm.org/rL345017.
It looks like there is some miscompile here, since
http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/25249/steps/check-lld%20msan/logs/stdio

  + ninja check-lld
  [1/3] Linking CXX executable tools/lld/unittests/DriverTests/DriverTests
  [2/3] Linking CXX executable tools/lld/unittests/MachOTests/lldMachOTests
  [2/3] Running lld test suite
  -- Testing: 1914 tests, 64 threads --
  Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70..
  FAIL: lld :: ELF/relocatable-versioned.s (1518 of 1914)
  ******************** TEST 'lld :: ELF/relocatable-versioned.s' FAILED ********************
  Script:
  --
  : 'RUN: at line 2';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llvm-mc -filetype=obj -triple=x86_64-unknown-linux /b/sanitizer-x86_64-linux-fast/build/llvm/tools/lld/test/ELF/relocatable-versioned.s -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/tools/lld/test/ELF/Output/relocatable-versioned.s.tmp1.o
  : 'RUN: at line 3';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/ld.lld -o /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/tools/lld/test/ELF/Output/relocatable-versioned.s.tmp2.o -r /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/tools/lld/test/ELF/Output/relocatable-versioned.s.tmp1.o
  : 'RUN: at line 4';   /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llvm-nm /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/tools/lld/test/ELF/Output/relocatable-versioned.s.tmp2.o | /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm/tools/lld/test/ELF/relocatable-versioned.s
  --
  Exit Code: 77
  
  Command Output (stderr):
  --
  ==17758==MemorySanitizer CHECK failed: /b/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/sanitizer_common/sanitizer_allocator.cc:191 "((kBlockMagic)) == ((((u64*)addr)[0]))" (0x6a6cb03abcebc041, 0x0)
      #0 0x59716b in MsanCheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) /b/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/msan/msan.cc:393
      #1 0x586635 in __sanitizer::CheckFailed(char const*, int, char const*, unsigned long long, unsigned long long) /b/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/sanitizer_common/sanitizer_termination.cc:79
      #2 0x57d5ff in __sanitizer::InternalFree(void*, __sanitizer::SizeClassAllocatorLocalCache<__sanitizer::SizeClassAllocator32<__sanitizer::AP32> >*) /b/sanitizer-x86_64-linux-fast/build/llvm/projects/compiler-rt/lib/sanitizer_common/sanitizer_allocator.cc:191
      #3 0x7fc21b24193f  (/lib/x86_64-linux-gnu/libc.so.6+0x3593f)
      #4 0x7fc21b241999 in exit (/lib/x86_64-linux-gnu/libc.so.6+0x35999)
      #5 0x7fc21b22c2e7 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x202e7)
      #6 0x57c039 in _start (/b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/lld+0x57c039)
  
  
  --
  
  ********************
  Testing: 0 .. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. 
  Testing Time: 10.54s
  ********************
  Failing Tests (1):
      lld :: ELF/relocatable-versioned.s
  
    Expected Passes    : 1881
    Unsupported Tests  : 32
    Unexpected Failures: 1
  FAILED: tools/lld/test/CMakeFiles/check-lld 

reverting appears to have fixed it.
The bot does not appear to be flaky.


Repository:
  rL LLVM

https://reviews.llvm.org/D53521





More information about the llvm-commits mailing list