Teach ISel not to optimize 'optnone' functions (revised).
authorPaul Robinson <paul_robinson@playstation.sony.com>
Fri, 22 Nov 2013 19:11:24 +0000 (19:11 +0000)
committerPaul Robinson <paul_robinson@playstation.sony.com>
Fri, 22 Nov 2013 19:11:24 +0000 (19:11 +0000)
commit16c7e0b48cd0a34565aae663caee83e5a641823a
tree80db529e381349ec5d477ab2757249ba649c64a5
parent09f1b252af316c3edff5ab07de20ca8eeedb648d
Teach ISel not to optimize 'optnone' functions (revised).

Improvements over r195317:
- Set/restore EnableFastISel flag instead of just running FastISel within
  SelectAllBasicBlocks; the flag is checked in various places, and
  FastISel won't run properly if those places don't do the right thing.
- Test looks for normal ISel versus FastISel behavior, and not
  something more subtle that doesn't work everywhere.

Based on work by Andrea Di Biagio.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@195491 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/MC/MCCodeGenInfo.h
include/llvm/Target/TargetMachine.h
lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
lib/Target/TargetMachine.cpp
test/CodeGen/X86/isel-optnone.ll [new file with mode: 0644]