llvm-6502/lib/Transforms
Benjamin Kramer d5a80c7358 Reapply chandlerc's r173342 now that the miscompile it was triggering is fixed.
Original commit message:
Plug TTI into the speculation logic, giving it a real cost interface
that can be specialized by targets.

The goal here is not to be more aggressive, but to just be more accurate
with very obvious cases. There are instructions which are known to be
truly free and which were not being modeled as such in this code -- see
the regression test which is distilled from an inner loop of zlib.

Everywhere the TTI cost model is insufficiently conservative I've added
explicit checks with FIXME comments to go add proper modelling of these
cost factors.

If this causes regressions, the likely solution is to make TTI even more
conservative in its cost estimates, but test cases will help here.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173357 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-24 16:44:25 +00:00
..
Hello Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
InstCombine Remove trailing whitespace. 2013-01-24 05:22:40 +00:00
Instrumentation [asan] fix 32-bit builds 2013-01-24 10:43:50 +00:00
IPO Add the IR attribute 'sspstrong'. 2013-01-23 06:41:41 +00:00
Scalar Fixed typo. 2013-01-22 21:53:43 +00:00
Utils Reapply chandlerc's r173342 now that the miscompile it was triggering is fixed. 2013-01-24 16:44:25 +00:00
Vectorize Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards. 2013-01-23 01:35:00 +00:00
CMakeLists.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
LLVMBuild.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
Makefile Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00