diff options
author | Sanjay Patel <spatel@rotateright.com> | 2018-02-05 21:50:32 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2018-02-05 21:50:32 +0000 |
commit | 49aafec2e62543f74a7799f653a913a2c94bb3d2 (patch) | |
tree | 7c5e1deac28910622c432d8e9488c63c36ce44e5 /lldb/packages/Python/lldbsuite/test | |
parent | 50397237d9119e16899fc72e043381c394de66cd (diff) | |
download | bcm5719-llvm-49aafec2e62543f74a7799f653a913a2c94bb3d2.tar.gz bcm5719-llvm-49aafec2e62543f74a7799f653a913a2c94bb3d2.zip |
[InstCombine] don't try to evaluate instructions with >1 use (revert r324014)
This example causes a compile-time explosion:
define i16 @foo(i16 %in) {
%x = zext i16 %in to i32
%a1 = mul i32 %x, %x
%a2 = mul i32 %a1, %a1
%a3 = mul i32 %a2, %a2
%a4 = mul i32 %a3, %a3
%a5 = mul i32 %a4, %a4
%a6 = mul i32 %a5, %a5
%a7 = mul i32 %a6, %a6
%a8 = mul i32 %a7, %a7
%a9 = mul i32 %a8, %a8
%a10 = mul i32 %a9, %a9
%a11 = mul i32 %a10, %a10
%a12 = mul i32 %a11, %a11
%a13 = mul i32 %a12, %a12
%a14 = mul i32 %a13, %a13
%a15 = mul i32 %a14, %a14
%a16 = mul i32 %a15, %a15
%a17 = mul i32 %a16, %a16
%a18 = mul i32 %a17, %a17
%a19 = mul i32 %a18, %a18
%a20 = mul i32 %a19, %a19
%a21 = mul i32 %a20, %a20
%a22 = mul i32 %a21, %a21
%a23 = mul i32 %a22, %a22
%a24 = mul i32 %a23, %a23
%T = trunc i32 %a24 to i16
ret i16 %T
}
llvm-svn: 324276
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
0 files changed, 0 insertions, 0 deletions