[PATCH] fast-isel: remove dead code after falling back from selecting call instructions (PR20863)

Hans Wennborg hans at chromium.org
Mon Sep 8 12:02:26 PDT 2014


Hi rnk,

Previously, fast-isel would not clean up after trying but failing to select a call instruction, because it would have called flushLocalValueMap() which moves the insertion point, making SavedInsertPt in selectInstruction() invalid. We can fix this by making SavedInsertPt a member variable, and having flushLocalValueMap() update it.

This removes some redundant code at-O0, and more importantly fixes PR20863. Please take a look!

http://reviews.llvm.org/D5249

Files:
  include/llvm/CodeGen/FastISel.h
  lib/CodeGen/SelectionDAG/FastISel.cpp
  test/CodeGen/X86/fast-isel-x86.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D5249.13411.patch
Type: text/x-patch
Size: 3261 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140908/335ca21c/attachment.bin>


More information about the llvm-commits mailing list