# RUN: llc -mcpu=haswell -filetype=obj -start-before stack-protector -O2 %s -o - | llvm-objdump -d - | FileCheck %s

# Test 1:
#
# Source C code:
# volatile int y;
# volatile int x;
# 
# int switchCase(int z, int w) {
# 	int result = 0;
# 	while (x > 0 && y < 0) {
# 		switch(z) {
# 			case 0:
# 			result+=result*5;break;
# 			case 1:
# 			result--; break;
# 			case 2:
# 			result *= result; break;
# 			case 3:
# 			result <<= 7; break;
# 			case 4:
# 			result >>= 7; break;
# 			case 5:
# 			result = result * 16 | ~result; break;
# 		}
# 	}
# 	return result;
# }
#
# CHECK:       49:       eb 4a   jmp     74 <switchCase+0x95>
# CHECK:       57:       eb 3c   jmp     60 <switchCase+0x95>
# CHECK:       65:       eb 2e   jmp     46 <switchCase+0x95>
# CHECK:       73:       eb 20   jmp     32 <switchCase+0x95>
# CHECK:       81:       eb 12   jmp     18 <switchCase+0x95>
# CHECK:       93:       7f 8b   jg      -117 <switchCase+0x20>

# Test 2:
#
# Source C code:
# 
# int ifElse(int z) {
# 	int w = 0;
# 	while(1) {
# 		if(x < 0)
# 			w++;
# 		else if(y > 0)
# 			w--;
# 		else if((x & y) == 3)
# 			w*=2;
# 		else if ((x | y) == 18)
# 			w += 2;
# 		else if ((y ^ x) == 154)
# 			w -= 3;
# 		else if(((y ^ x) & 1) != 0)
# 			break;
# 	}
# 	return w;
# }
#
# CHECK:       129:       eb 13   jmp     19 <ifElse+0x7e>
# CHECK:       12e:       eb a0   jmp     -96 <ifElse+0x10>
# CHECK:       132:       eb 9c   jmp     -100 <ifElse+0x10>
# CHECK:       137:       eb 97   jmp     -105 <ifElse+0x10>
# CHECK:       13c:       eb 92   jmp     -110 <ifElse+0x10>
--- |
  ; ModuleID = 'D:\iusers\opaparo\dev_test\branch_instruction_and_target_split_perf_nops.ll'
  source_filename = "D:\5C\5Ciusers\5C\5Copaparo\5C\5Cdev_test\5C\5Cbranch_instruction_and_target_split_perf_nops.c"
  target datalayout = "e-m:w-i64:64-f80:128-n8:16:32:64-S128"
  target triple = "x86_64-pc-windows-msvc19.0.24210"
  
  @x = common global i32 0, align 4
  @y = common global i32 0, align 4
  
  ; Function Attrs: norecurse nounwind uwtable
  define i32 @switchCase(i32 %z, i32 %w) local_unnamed_addr #0 {
  entry:
    %0 = load volatile i32, i32* @x, align 4, !tbaa !3
    %cmp19 = icmp sgt i32 %0, 0
    br i1 %cmp19, label %land.rhs.preheader, label %while.end
  
  land.rhs.preheader:                               ; preds = %entry
    br label %land.rhs
  
  land.rhs:                                         ; preds = %sw.epilog, %land.rhs.preheader
    %result.020 = phi i32 [ %result.1, %sw.epilog ], [ 0, %land.rhs.preheader ]
    %1 = load volatile i32, i32* @y, align 4, !tbaa !3
    %cmp1 = icmp slt i32 %1, 0
    br i1 %cmp1, label %while.body, label %while.end
  
  while.body:                                       ; preds = %land.rhs
    switch i32 %z, label %sw.epilog [
      i32 0, label %sw.bb
      i32 1, label %sw.bb2
      i32 2, label %sw.bb3
      i32 3, label %sw.bb5
      i32 4, label %sw.bb6
      i32 5, label %sw.bb7
    ]
  
  sw.bb:                                            ; preds = %while.body
    %add = mul nsw i32 %result.020, 6
    br label %sw.epilog
  
  sw.bb2:                                           ; preds = %while.body
    %dec = add nsw i32 %result.020, -1
    br label %sw.epilog
  
  sw.bb3:                                           ; preds = %while.body
    %mul4 = mul nsw i32 %result.020, %result.020
    br label %sw.epilog
  
  sw.bb5:                                           ; preds = %while.body
    %shl = shl i32 %result.020, 7
    br label %sw.epilog
  
  sw.bb6:                                           ; preds = %while.body
    %shr = ashr i32 %result.020, 7
    br label %sw.epilog
  
  sw.bb7:                                           ; preds = %while.body
    %mul8 = shl nsw i32 %result.020, 4
    %neg = xor i32 %result.020, -1
    %or = or i32 %mul8, %neg
    br label %sw.epilog
  
  sw.epilog:                                        ; preds = %sw.bb7, %sw.bb6, %sw.bb5, %sw.bb3, %sw.bb2, %sw.bb, %while.body
    %result.1 = phi i32 [ %result.020, %while.body ], [ %or, %sw.bb7 ], [ %shr, %sw.bb6 ], [ %shl, %sw.bb5 ], [ %mul4, %sw.bb3 ], [ %dec, %sw.bb2 ], [ %add, %sw.bb ]
    %2 = load volatile i32, i32* @x, align 4, !tbaa !3
    %cmp = icmp sgt i32 %2, 0
    br i1 %cmp, label %land.rhs, label %while.end
  
  while.end:                                        ; preds = %sw.epilog, %land.rhs, %entry
    %result.0.lcssa = phi i32 [ 0, %entry ], [ %result.020, %land.rhs ], [ %result.1, %sw.epilog ]
    ret i32 %result.0.lcssa
  }
  
  ; Function Attrs: norecurse nounwind uwtable
  define i32 @ifElse(i32 %z) local_unnamed_addr #0 {
  entry:
    br label %while.cond.outer
  
  while.cond.outer:                                 ; preds = %if.then, %if.then2, %if.then5, %if.then8, %if.then11, %entry
    %w.0.ph = phi i32 [ 0, %entry ], [ %sub, %if.then11 ], [ %add, %if.then8 ], [ %mul, %if.then5 ], [ %dec, %if.then2 ], [ %inc, %if.then ]
    br label %while.cond
  
  while.cond:                                       ; preds = %if.else12, %while.cond.outer
    %0 = load volatile i32, i32* @x, align 4, !tbaa !3
    %cmp = icmp slt i32 %0, 0
    br i1 %cmp, label %if.then, label %if.else
  
  if.then:                                          ; preds = %while.cond
    %inc = add nsw i32 %w.0.ph, 1
    br label %while.cond.outer
  
  if.else:                                          ; preds = %while.cond
    %1 = load volatile i32, i32* @y, align 4, !tbaa !3
    %cmp1 = icmp sgt i32 %1, 0
    br i1 %cmp1, label %if.then2, label %if.else3
  
  if.then2:                                         ; preds = %if.else
    %dec = add nsw i32 %w.0.ph, -1
    br label %while.cond.outer
  
  if.else3:                                         ; preds = %if.else
    %2 = load volatile i32, i32* @x, align 4, !tbaa !3
    %3 = load volatile i32, i32* @y, align 4, !tbaa !3
    %and = and i32 %3, %2
    %cmp4 = icmp eq i32 %and, 3
    br i1 %cmp4, label %if.then5, label %if.else6
  
  if.then5:                                         ; preds = %if.else3
    %mul = shl nsw i32 %w.0.ph, 1
    br label %while.cond.outer
  
  if.else6:                                         ; preds = %if.else3
    %4 = load volatile i32, i32* @x, align 4, !tbaa !3
    %5 = load volatile i32, i32* @y, align 4, !tbaa !3
    %or = or i32 %5, %4
    %cmp7 = icmp eq i32 %or, 18
    br i1 %cmp7, label %if.then8, label %if.else9
  
  if.then8:                                         ; preds = %if.else6
    %add = add nsw i32 %w.0.ph, 2
    br label %while.cond.outer
  
  if.else9:                                         ; preds = %if.else6
    %6 = load volatile i32, i32* @y, align 4, !tbaa !3
    %7 = load volatile i32, i32* @x, align 4, !tbaa !3
    %xor = xor i32 %7, %6
    %cmp10 = icmp eq i32 %xor, 154
    br i1 %cmp10, label %if.then11, label %if.else12
  
  if.then11:                                        ; preds = %if.else9
    %sub = add nsw i32 %w.0.ph, -3
    br label %while.cond.outer
  
  if.else12:                                        ; preds = %if.else9
    %8 = load volatile i32, i32* @y, align 4, !tbaa !3
    %9 = load volatile i32, i32* @x, align 4, !tbaa !3
    %xor13 = xor i32 %9, %8
    %and14 = and i32 %xor13, 1
    %cmp15 = icmp eq i32 %and14, 0
    br i1 %cmp15, label %while.cond, label %while.end
  
  while.end:                                        ; preds = %if.else12
    ret i32 %w.0.ph
  }
  
  attributes #0 = { norecurse nounwind uwtable "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-calls"="false" "less-precise-fpmad"="false" "no-frame-pointer-elim"="false" "no-infs-fp-math"="false" "no-jump-tables"="false" "no-nans-fp-math"="false" "no-signed-zeros-fp-math"="false" "no-trapping-math"="false" "stack-protector-buffer-size"="8" "target-cpu"="haswell" "target-features"="+aes,+avx,+avx2,+bmi,+bmi2,+cx16,+f16c,+fma,+fsgsbase,+fxsr,+lzcnt,+mmx,+movbe,+pclmul,+popcnt,+rdrnd,+sse,+sse2,+sse3,+sse4.1,+sse4.2,+ssse3,+x87,+xsave,+xsaveopt" "unsafe-fp-math"="false" "use-soft-float"="false" }
  
  !llvm.module.flags = !{!0, !1}
  !llvm.ident = !{!2}
  
  !0 = !{i32 1, !"wchar_size", i32 2}
  !1 = !{i32 7, !"PIC Level", i32 2}
  !2 = !{!"clang version 6.0.0 (ssh://git-amr-1.devtools.intel.com:29418/dpd_icl-llvm_clang_worldread 3789ad4283ec09df1ed8411abbb227d76e7ef8cb) (ssh://git-amr-1.devtools.intel.com:29418/dpd_icl-llvm_llvm_worldread 42897913cc9fac0d94e8636d9aed4dc193d7864e)"}
  !3 = !{!4, !4, i64 0}
  !4 = !{!"int", !5, i64 0}
  !5 = !{!"omnipotent char", !6, i64 0}
  !6 = !{!"Simple C/C++ TBAA"}

...
---
name:            switchCase
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:       
liveins:         
frameInfo:       
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       0
  offsetAdjustment: 0
  maxAlignment:    0
  adjustsStack:    false
  hasCalls:        false
  stackProtector:  ''
  maxCallFrameSize: 4294967295
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  savePoint:       ''
  restorePoint:    ''
fixedStack:      
stack:           
constants:       
body:             |

...
---
name:            ifElse
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:       
liveins:         
frameInfo:       
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       0
  offsetAdjustment: 0
  maxAlignment:    0
  adjustsStack:    false
  hasCalls:        false
  stackProtector:  ''
  maxCallFrameSize: 4294967295
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  savePoint:       ''
  restorePoint:    ''
fixedStack:      
stack:           
constants:       
body:             |

...
