llvm/llvm/test/Transforms/NewGVN/2007-07-31-RedundantPhi.ll

; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 4
; RUN: opt < %s -passes=newgvn -S | FileCheck %s

@img_width = external global i16		; <ptr> [#uses=2]

define i32 @smpUMHEXBipredIntegerPelBlockMotionSearch(ptr %cur_pic, i16 signext  %ref, i32 %list, i32 %pic_pix_x, i32 %pic_pix_y, i32 %blocktype, i16 signext  %pred_mv_x1, i16 signext  %pred_mv_y1, i16 signext  %pred_mv_x2, i16 signext  %pred_mv_y2, ptr %mv_x, ptr %mv_y, ptr %s_mv_x, ptr %s_mv_y, i32 %search_range, i32 %min_mcost, i32 %lambda_factor) {
; CHECK-LABEL: define i32 @smpUMHEXBipredIntegerPelBlockMotionSearch(
; CHECK-SAME: ptr [[CUR_PIC:%.*]], i16 signext [[REF:%.*]], i32 [[LIST:%.*]], i32 [[PIC_PIX_X:%.*]], i32 [[PIC_PIX_Y:%.*]], i32 [[BLOCKTYPE:%.*]], i16 signext [[PRED_MV_X1:%.*]], i16 signext [[PRED_MV_Y1:%.*]], i16 signext [[PRED_MV_X2:%.*]], i16 signext [[PRED_MV_Y2:%.*]], ptr [[MV_X:%.*]], ptr [[MV_Y:%.*]], ptr [[S_MV_X:%.*]], ptr [[S_MV_Y:%.*]], i32 [[SEARCH_RANGE:%.*]], i32 [[MIN_MCOST:%.*]], i32 [[LAMBDA_FACTOR:%.*]]) {
; CHECK-NEXT:  cond_next143:
; CHECK-NEXT:    store i16 0, ptr @img_width, align 2
; CHECK-NEXT:    br i1 false, label [[COND_NEXT449:%.*]], label [[COND_FALSE434:%.*]]
; CHECK:       cond_false434:
; CHECK-NEXT:    br label [[COND_NEXT449]]
; CHECK:       cond_next449:
; CHECK-NEXT:    br i1 false, label [[COND_NEXT698:%.*]], label [[COND_FALSE470:%.*]]
; CHECK:       cond_false470:
; CHECK-NEXT:    br label [[COND_NEXT698]]
; CHECK:       cond_next698:
; CHECK-NEXT:    ret i32 0
;
cond_next143:		; preds = %entry
  store i16 0, ptr @img_width, align 2
  br i1 false, label %cond_next449, label %cond_false434

cond_false434:		; preds = %cond_true415
  br label %cond_next449

cond_next449:		; preds = %cond_false434, %cond_true415
  br i1 false, label %cond_next698, label %cond_false470

cond_false470:		; preds = %cond_next449
  br label %cond_next698

cond_next698:		; preds = %cond_true492
  %tmp701 = load i16, ptr @img_width, align 2		; <i16> [#uses=0]
  ret i32 0
}