llvm-6502/lib/Transforms
Chris Lattner a188894d67 Implement a little hack for parity with GCC on crafty. This speeds up
186.crafty by about 16% (from 15.109s to 13.045s) on my system.

This turns allocas with unions/casts into scalars.  For example crafty has
something like this:

    union doub {
      unsigned short i[4];
      long long d;
    };
int f(long long a) {
  return ((union doub){.d=a}).i[1];
}

Instead of generating loads and stores to an alloca, we now promote the
whole thing to a scalar long value.

This implements: Transforms/ScalarRepl/AggregatePromote.ll


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@24667 91177308-0d34-0410-b5e6-96231b3b80d8
2005-12-12 07:19:13 +00:00
..
Hello Remove trailing whitespace 2005-04-21 23:48:37 +00:00
Instrumentation a few more comments on the interfaces and functions 2005-11-28 18:10:59 +00:00
IPO Wrap a long line, never internalize llvm.used. 2005-12-05 05:07:38 +00:00
Scalar Implement a little hack for parity with GCC on crafty. This speeds up 2005-12-12 07:19:13 +00:00
Utils Fix SimplifyCFG/2005-12-03-IncorrectPHIFold.ll 2005-12-03 18:25:58 +00:00
ExprTypeConvert.cpp Now that instcombine does this xform, remove it from the -raise pass 2005-10-29 04:40:23 +00:00
LevelRaise.cpp ConvertibleToGEP always returns 0, remove some old crufty code which 2005-07-26 16:38:28 +00:00
Makefile DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now 2005-10-24 02:26:13 +00:00
TransformInternals.cpp Remove dead #include 2005-10-29 04:41:30 +00:00
TransformInternals.h ConvertibleToGEP always returns 0, remove some old crufty code which 2005-07-26 16:38:28 +00:00