; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --check-globals all --version 4
; RUN: opt -S -passes=mergefunc -mergefunc-use-aliases < %s | FileCheck %s

@g1 = external unnamed_addr global i8
@g2 = external unnamed_addr global i8

;.
; CHECK: @g1 = external unnamed_addr global i8
; CHECK: @g2 = external unnamed_addr global i8
;.
define ptr @f3() unnamed_addr {
; CHECK-LABEL: define ptr @f3() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr inbounds (i8, ptr @g1, i64 2)
;
  ret ptr getelementptr inbounds (i8, ptr @g1, i64 2)
}

define ptr @f4() unnamed_addr {
; CHECK-LABEL: define ptr @f4() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr (i16, ptr @g1, i64 2)
;
  ret ptr getelementptr (i16, ptr @g1, i64 2)
}

define ptr @f5() unnamed_addr {
; CHECK-LABEL: define ptr @f5() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr (i8, ptr @g1, i64 2)
;
  ret ptr getelementptr (i8, ptr @g1, i64 2)
}

define i64 @f6() unnamed_addr {
; CHECK-LABEL: define i64 @f6() unnamed_addr {
; CHECK-NEXT:    ret i64 add nuw (i64 ptrtoint (ptr @g1 to i64), i64 1)
;
  ret i64 add nuw (i64 ptrtoint (ptr @g1 to i64), i64 1)
}

define i64 @f7() unnamed_addr {
; CHECK-LABEL: define i64 @f7() unnamed_addr {
; CHECK-NEXT:    ret i64 add (i64 ptrtoint (ptr @g1 to i64), i64 1)
;
  ret i64 add (i64 ptrtoint (ptr @g1 to i64), i64 1)
}

define i64 @f8() unnamed_addr {
; CHECK-LABEL: define i64 @f8() unnamed_addr {
; CHECK-NEXT:    ret i64 sub (i64 ptrtoint (ptr @g1 to i64), i64 1)
;
  ret i64 sub (i64 ptrtoint (ptr @g1 to i64), i64 1)
}

define ptr @f10() unnamed_addr {
; CHECK-LABEL: define ptr @f10() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr inrange(0, 4) ([4 x i32], ptr @g1, i64 0, i64 1)
;
  ret ptr getelementptr inrange(0, 4) ([4 x i32], ptr @g1, i64 0, i64 1)
}

define ptr @f11() unnamed_addr {
; CHECK-LABEL: define ptr @f11() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr ([4 x i32], ptr @g1, i64 0, i64 1)
;
  ret ptr getelementptr ([4 x i32], ptr @g1, i64 0, i64 1)
}

define ptr @f12() unnamed_addr {
; CHECK-LABEL: define ptr @f12() unnamed_addr {
; CHECK-NEXT:    ret ptr getelementptr inrange(-4, 12) ([4 x i32], ptr @g1, i64 0, i64 1)
;
  ret ptr getelementptr inrange(-4, 12) ([4 x i32], ptr @g1, i64 0, i64 1)
}
