Files
llvm/test/CodeGen/ARM
Tim Northover b226159d1c ARM: don't mangle DAG constant if it has more than one use
The basic optimisation was to convert (mul $LHS, $complex_constant) into
roughly "(shl (mul $LHS, $simple_constant), $simple_amt)" when it was expected
to be cheaper. The original logic checks that the mul only has one use (since
we're mangling $complex_constant), but when used in even more complex
addressing modes there may be an outer addition that can pick up the wrong
value too.

I *think* the ARM addressing-mode problem is actually unreachable at the
moment, but that depends on complex assessments of the profitability of
pre-increment addressing modes so I've put a real check in there instead of an
assertion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@259228 91177308-0d34-0410-b5e6-96231b3b80d8
2016-01-29 19:18:46 +00:00
..
2016-01-26 00:03:25 +00:00
2014-04-03 17:35:22 +00:00
2016-01-28 18:59:04 +00:00
2012-06-11 08:07:26 +00:00
2014-02-16 07:31:05 +00:00
2014-08-26 12:47:26 +00:00
2014-01-29 11:50:56 +00:00
2014-01-29 11:50:56 +00:00
2015-10-26 20:49:49 +00:00
2016-01-26 00:03:25 +00:00
2014-04-25 17:51:25 +00:00
2014-11-17 14:08:57 +00:00
2016-01-26 00:03:25 +00:00
2014-04-03 17:35:22 +00:00
2012-09-29 21:43:49 +00:00
2014-12-04 19:34:50 +00:00
2015-12-17 01:29:08 +00:00
2014-04-03 17:35:22 +00:00
2014-04-03 17:35:22 +00:00
2015-01-19 15:16:06 +00:00
2011-03-15 01:49:08 +00:00
2014-04-03 17:35:22 +00:00
2014-04-23 01:09:29 +00:00
2014-01-24 17:20:08 +00:00
2016-01-26 00:03:25 +00:00
2015-08-13 17:28:16 +00:00