[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / CodeGen / X86 / discontiguous-loops.ll
blob01ba4dffe33b6863e8e1c9a6c88d94ce16d5dc4c
1 ; RUN: llc -verify-loop-info -verify-dom-info -mtriple=x86_64-- < %s
2 ; PR5243
4 @.str96 = external constant [37 x i8], align 8    ; <[37 x i8]*> [#uses=1]
6 define void @foo() nounwind {
7 bb:
8   br label %ybb1
10 ybb1:                                              ; preds = %yybb13, %xbb6, %bb
11   switch i32 undef, label %bb18 [
12     i32 150, label %ybb2
13     i32 151, label %bb17
14     i32 152, label %bb19
15     i32 157, label %ybb8
16   ]
18 ybb2:                                              ; preds = %ybb1
19   %tmp = icmp eq i8** undef, null                 ; <i1> [#uses=1]
20   br i1 %tmp, label %bb3, label %xbb6
22 bb3:                                              ; preds = %ybb2
23   unreachable
25 xbb4:                                              ; preds = %xbb6
26   store i32 0, i32* undef, align 8
27   br i1 undef, label %xbb6, label %bb5
29 bb5:                                              ; preds = %xbb4
30   call fastcc void @decl_mode_check_failed() nounwind
31   unreachable
33 xbb6:                                              ; preds = %xbb4, %ybb2
34   %tmp7 = icmp slt i32 undef, 0                   ; <i1> [#uses=1]
35   br i1 %tmp7, label %xbb4, label %ybb1
37 ybb8:                                              ; preds = %ybb1
38   %tmp9 = icmp eq i8** undef, null                ; <i1> [#uses=1]
39   br i1 %tmp9, label %bb10, label %ybb12
41 bb10:                                             ; preds = %ybb8
42   %tmp11 = load i8*, i8** undef, align 8               ; <i8*> [#uses=1]
43   call void (i8*, ...) @fatal(i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str96, i64 0, i64 0), i8* %tmp11) nounwind
44   unreachable
46 ybb12:                                             ; preds = %ybb8
47   br i1 undef, label %bb15, label %ybb13
49 ybb13:                                             ; preds = %ybb12
50   %tmp14 = icmp sgt i32 undef, 0                  ; <i1> [#uses=1]
51   br i1 %tmp14, label %bb16, label %ybb1
53 bb15:                                             ; preds = %ybb12
54   call void (i8*, ...) @fatal(i8* getelementptr inbounds ([37 x i8], [37 x i8]* @.str96, i64 0, i64 0), i8* undef) nounwind
55   unreachable
57 bb16:                                             ; preds = %ybb13
58   unreachable
60 bb17:                                             ; preds = %ybb1
61   unreachable
63 bb18:                                             ; preds = %ybb1
64   unreachable
66 bb19:                                             ; preds = %ybb1
67   unreachable
70 declare void @fatal(i8*, ...)
72 declare fastcc void @decl_mode_check_failed() nounwind