OSDN Git Service

[FastISel] Fix local value sinking algorithmic complexity
authorReid Kleckner <rnk@google.com>
Fri, 27 Apr 2018 21:48:51 +0000 (21:48 +0000)
committerReid Kleckner <rnk@google.com>
Fri, 27 Apr 2018 21:48:51 +0000 (21:48 +0000)
commit2c33602f655decc9d7f8222c052c46851931fce1
treebb8ffe96f548a78055f08ef0ef8948470fc127cc
parent73de5c1a0b6f1c6696e403f3cf54c1c1eb426372
[FastISel] Fix local value sinking algorithmic complexity

Now local value sinking only scans and numbers instructions added
between the current flush point and the last flush point. This ensures
that ISel is overall linear in the size of the BB.

Fixes PR37010 and re-enables local value sinking by default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@331087 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/CodeGen/FastISel.h
lib/CodeGen/SelectionDAG/FastISel.cpp