[PATCH] D74128: AMDGPU/GlobalISel: Fully handle 0 dmask case during legalize

Vitaly Buka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 17 21:36:26 PDT 2020


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

http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/39600

  ==60948==ERROR: AddressSanitizer: use-after-poison on address 0x6210004a8ce8 at pc 0x00000720aed7 bp 0x7ffc3bd86520 sp 0x7ffc3bd86518
  READ of size 8 at 0x6210004a8ce8 thread T0
      #0 0x720aed6 in getOpcode /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/CodeGen/MachineInstr.h:430:39
      #1 0x720aed6 in createdOrChangedInstr /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp:103:35
      #2 0x720aed6 in (anonymous namespace)::LegalizerWorkListManager::changedInstr(llvm::MachineInstr&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp:139:5
      #3 0x18b2d2e in changedInstr /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h:97:10
      #4 0x18b2d2e in non-virtual thunk to llvm::GISelObserverWrapper::changedInstr(llvm::MachineInstr&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
      #5 0x18a7562 in operator() /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp:3483:54
      #6 0x18a7562 in ~scope_exit /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/include/llvm/ADT/ScopeExit.h:45:7
      #7 0x18a7562 in llvm::AMDGPULegalizerInfo::legalizeImageIntrinsic(llvm::MachineInstr&, llvm::MachineIRBuilder&, llvm::GISelChangeObserver&, llvm::AMDGPU::ImageDimIntrinsicInfo const*) const /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp:3759:1
      #8 0x18ab5a8 in llvm::AMDGPULegalizerInfo::legalizeIntrinsic(llvm::MachineInstr&, llvm::MachineIRBuilder&, llvm::GISelChangeObserver&) const /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp:4048:14
      #9 0x721506c in llvm::LegalizerHelper::legalizeInstrStep(llvm::MachineInstr&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp:107:15
      #10 0x720358e in llvm::Legalizer::legalizeMachineFunction(llvm::MachineFunction&, llvm::LegalizerInfo const&, llvm::ArrayRef<llvm::GISelChangeObserver*>, llvm::MachineIRBuilder&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp:207:25
      #11 0x7209280 in llvm::Legalizer::runOnMachineFunction(llvm::MachineFunction&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/GlobalISel/Legalizer.cpp:312:21
      #12 0x45e42ad in llvm::MachineFunctionPass::runOnFunction(llvm::Function&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/CodeGen/MachineFunctionPass.cpp:73:13
      #13 0x5165330 in llvm::FPPassManager::runOnFunction(llvm::Function&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/IR/LegacyPassManager.cpp:1482:27
      #14 0x3ae6386 in RunPassOnSCC /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/CallGraphSCCPass.cpp:176:25
      #15 0x3ae6386 in RunAllPassesOnSCC /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/CallGraphSCCPass.cpp:441:16
      #16 0x3ae6386 in (anonymous namespace)::CGPassManager::runOnModule(llvm::Module&) /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/lib/Analysis/CallGraphSCCPass.cpp:497:18


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

https://reviews.llvm.org/D74128





More information about the llvm-commits mailing list