[PATCH] D19410: [scan-build] fix warnings emitted on LLVM ARM code base

Apelete Seketeli via llvm-commits llvm-commits at lists.llvm.org
Mon May 9 03:19:15 PDT 2016


apelete updated this revision to Diff 56543.
apelete added a comment.
Herald added a subscriber: rengolin.

[scan-build] fix warnings emitted on LLVM ARM code base

Changes since last revision:

- lib/Target/ARM/ARMFrameLowering.cpp: removed changes, fix is done in http://reviews.llvm.org/D19896.


http://reviews.llvm.org/D19410

Files:
  lib/Target/ARM/AsmParser/ARMAsmParser.cpp
  lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
  lib/Target/ARM/Thumb2SizeReduction.cpp

Index: lib/Target/ARM/Thumb2SizeReduction.cpp
===================================================================
--- lib/Target/ARM/Thumb2SizeReduction.cpp
+++ lib/Target/ARM/Thumb2SizeReduction.cpp
@@ -989,6 +989,7 @@
     }
 
     if (!NextInSameBundle && MI->isInsideBundle()) {
+      assert(BundleMI && "MachineInstr is null, abort reducing width of instructions");
       // FIXME: Since post-ra scheduler operates on bundles, the CPSR kill
       // marker is only on the BUNDLE instruction. Process the BUNDLE
       // instruction as we finish with the bundled instruction to work around
Index: lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
===================================================================
--- lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
+++ lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
@@ -406,6 +406,7 @@
     report_fatal_error("FIXME: relocations to absolute targets "
                        "not yet implemented");
   } else {
+    assert(A && "symbol is needed to resolve constant variables");
     // Resolve constant variables.
     if (A->isVariable()) {
       int64_t Res;
Index: lib/Target/ARM/AsmParser/ARMAsmParser.cpp
===================================================================
--- lib/Target/ARM/AsmParser/ARMAsmParser.cpp
+++ lib/Target/ARM/AsmParser/ARMAsmParser.cpp
@@ -9961,7 +9961,9 @@
     return true;
 
   // '.align' is target specifically handled to mean 2**2 byte alignment.
-  if (getStreamer().getCurrentSection().first->UseCodeAlign())
+  const MCSection *Section = getStreamer().getCurrentSection().first;
+  assert(Section && "must have section to emit alignment");
+  if (Section->UseCodeAlign())
     getStreamer().EmitCodeAlignment(4, 0);
   else
     getStreamer().EmitValueToAlignment(4, 0, 1, 0);


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D19410.56543.patch
Type: text/x-patch
Size: 1794 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160509/f639b04d/attachment.bin>


More information about the llvm-commits mailing list