1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 05:01:59 +01:00
Bob Wilson 437d85dd57 Add an argument to PHITranslateValue to specify the DominatorTree. If this
argument is non-null, pass it along to PHITranslateSubExpr so that it can
prefer using existing values that dominate the PredBB, instead of just
blindly picking the first equivalent value that it finds on a uselist.
Also when the DominatorTree is specified, have PHITranslateValue filter
out any result that does not dominate the PredBB.  This is basically just
refactoring the check that used to be in GetAvailablePHITranslatedSubExpr
and also in GVN.

Despite my initial expectations, this change does not affect the results
of GVN for any testcases that I could find, but it should help compile time.
Before this change, if PHITranslateSubExpr picked a value that does not
dominate, PHITranslateWithInsertion would then insert a new value, which GVN
would later determine to be redundant and would replace.  By picking a good
value to begin with, we save GVN the extra work of inserting and then
replacing a new value.

llvm-svn: 97010
2010-02-24 01:39:00 +00:00
2010-02-23 20:53:37 +00:00
2010-02-16 03:45:17 +00:00
2010-01-22 18:14:14 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 15:11:17 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 09:05:01 +00:00
2007-08-03 05:43:35 +00:00
2010-01-22 02:04:33 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 19:15:24 +00:00
2010-01-09 18:40:31 +00:00
2007-07-13 09:48:29 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 20:53:37 +00:00
2010-02-23 20:53:37 +00:00
2010-02-21 03:01:05 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the HTML documentation provided in docs/index.html for further
assistance with LLVM.
Description
Languages
C++ 96.9%
C 1%
Python 1%
CMake 0.6%
OCaml 0.2%
Other 0.1%