a35167fba04f4ccb7658992c7979cea85cfb4473
[oota-llvm.git] / test / CodeGen / SystemZ / 2009-07-05-Shifts.ll
1 ; RUN: llc < %s
2
3 target datalayout = "E-p:64:64:64-i8:8:16-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-f128:128:128-a0:16:16"
4 target triple = "s390x-linux"
5
6 define signext i32 @bit_place_piece(i32 signext %col, i32 signext %player, i64* nocapture %b1, i64* nocapture %b2) nounwind {
7 entry:
8         br i1 undef, label %for.body, label %return
9
10 for.body:               ; preds = %entry
11         %add = add i32 0, %col          ; <i32> [#uses=1]
12         %sh_prom = zext i32 %add to i64         ; <i64> [#uses=1]
13         %shl = shl i64 1, %sh_prom              ; <i64> [#uses=1]
14         br i1 undef, label %if.then13, label %if.else
15
16 if.then13:              ; preds = %for.body
17         ret i32 0
18
19 if.else:                ; preds = %for.body
20         %or34 = or i64 undef, %shl              ; <i64> [#uses=0]
21         ret i32 0
22
23 return:         ; preds = %entry
24         ret i32 1
25 }