summaryrefslogtreecommitdiff
path: root/test/Transforms/InstCombine/udivrem-change-width.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-11-07 19:11:46 +0000
committerChris Lattner <sabre@nondot.org>2009-11-07 19:11:46 +0000
commit918871ee016e9336e28b434738d20960036d05a4 (patch)
tree27b07d5c7caf4bd3e276e85397e0b33dad414040 /test/Transforms/InstCombine/udivrem-change-width.ll
parent59a9178fbedb88427c8ff9e5fa7a8f2038f80a2e (diff)
downloadllvm-918871ee016e9336e28b434738d20960036d05a4.tar.gz
llvm-918871ee016e9336e28b434738d20960036d05a4.tar.bz2
llvm-918871ee016e9336e28b434738d20960036d05a4.tar.xz
make instcombine only rewrite a chain of computation
(eliminating some extends) if the new type of the computation is legal or if both the source and dest are illegal. This prevents instcombine from changing big chains of computation into i64 on 32-bit targets for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86398 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/InstCombine/udivrem-change-width.ll')
-rw-r--r--test/Transforms/InstCombine/udivrem-change-width.ll2
1 files changed, 2 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/udivrem-change-width.ll b/test/Transforms/InstCombine/udivrem-change-width.ll
index 56877e30f9..9983944df8 100644
--- a/test/Transforms/InstCombine/udivrem-change-width.ll
+++ b/test/Transforms/InstCombine/udivrem-change-width.ll
@@ -1,6 +1,8 @@
; RUN: opt < %s -instcombine -S | not grep zext
; PR4548
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
+
define i8 @udiv_i8(i8 %a, i8 %b) nounwind {
%conv = zext i8 %a to i32
%conv2 = zext i8 %b to i32