[PATCH] D157948: [NFC]Fix possibly deref nullptr
Wang, Xin via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Aug 14 20:37:43 PDT 2023
XinWang10 created this revision.
Herald added subscribers: pengfei, hiraditya.
Herald added a project: All.
XinWang10 requested review of this revision.
Herald added subscribers: llvm-commits, wangpc.
Herald added a project: LLVM.
1. In X86LowerAMXType.cpp dyn_cast could lead to UserI be nullptr which coud be dref in IRBuilder constructor.
2. In AsmPrinter.cpp, doInitialization could make MMI be nullptr if MMIWP->getMMI() is false, then the deref after could be unexpected.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D157948
Files:
llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
llvm/lib/Target/X86/X86LowerAMXType.cpp
Index: llvm/lib/Target/X86/X86LowerAMXType.cpp
===================================================================
--- llvm/lib/Target/X86/X86LowerAMXType.cpp
+++ llvm/lib/Target/X86/X86LowerAMXType.cpp
@@ -494,7 +494,7 @@
Value *Row = II->getOperand(0);
Value *Col = II->getOperand(1);
- Instruction *UserI = dyn_cast<Instruction>(U.getUser());
+ Instruction *UserI = cast<Instruction>(U.getUser());
IRBuilder<> Builder(UserI);
Value *Stride = Builder.getInt64(64);
std::array<Value *, 4> Args = {Row, Col, Ptr, Stride};
Index: llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
===================================================================
--- llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+++ llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
@@ -516,7 +516,7 @@
CodeViewLineTablesGroupDescription);
}
if (!EmitCodeView || M.getDwarfVersion()) {
- if (MMI->hasDebugInfo()) {
+ if (MMI && MMI->hasDebugInfo()) {
DD = new DwarfDebug(this);
Handlers.emplace_back(std::unique_ptr<DwarfDebug>(DD), DbgTimerName,
DbgTimerDescription, DWARFGroupName,
@@ -573,7 +573,8 @@
break;
case WinEH::EncodingType::X86:
case WinEH::EncodingType::Itanium:
- ES = new WinException(this);
+ if (MMI)
+ ES = new WinException(this);
break;
}
break;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D157948.550183.patch
Type: text/x-patch
Size: 1385 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230815/1573878f/attachment.bin>
More information about the llvm-commits
mailing list