reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
; RUN: opt -licm -enable-mssa-loop-dependency -verify-memoryssa -S < %s | FileCheck %s
; REQUIRES: asserts

target datalayout = "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64"
target triple = "s390x-ibm-linux"

@g_328 = external dso_local local_unnamed_addr global { i32, i16, i32, i8, i8, i32, i32 }, align 4

define dso_local void @func_45() local_unnamed_addr {
; CHECK-LABEL: @func_45()
bb:
  br label %bb7

bb7:                                              ; preds = %bb
  br label %bb8

bb8:                                              ; preds = %bb80, %bb7
  %tmp10 = load i32, i32* getelementptr inbounds ({ i32, i16, i32, i8, i8, i32, i32 }, { i32, i16, i32, i8, i8, i32, i32 }* @g_328, i64 0, i32 5), align 4
  %0 = or i32 %tmp10, 9
  store i32 %0, i32* getelementptr inbounds ({ i32, i16, i32, i8, i8, i32, i32 }, { i32, i16, i32, i8, i8, i32, i32 }* @g_328, i64 0, i32 5), align 4
  br label %bb41.preheader.preheader

bb41.preheader.preheader:                         ; preds = %bb80.thread, %bb8
  br label %bb68

bb84.thread.split.loop.exit67:                    ; preds = %bb71.1
  br label %bb84.thread

bb84.thread.split.loop.exit71:                    ; preds = %bb71.2
  br label %bb84.thread

bb84.thread.split.loop.exit91:                    ; preds = %bb71.1.2
  br label %bb84.thread

bb84.thread:                                      ; preds = %bb84.thread.split.loop.exit91, %bb84.thread.split.loop.exit71, %bb84.thread.split.loop.exit67
  unreachable

bb68:                                             ; preds = %bb41.preheader.preheader
  br i1 false, label %bb71, label %bb80

bb71:                                             ; preds = %bb68
  br label %bb71.1

bb80.thread:                                      ; preds = %bb71.1.2
  br label %bb41.preheader.preheader

bb80:                                             ; preds = %bb68
  br label %bb8

bb71.1:                                           ; preds = %bb71
  br i1 true, label %bb84.thread.split.loop.exit67, label %bb71.2

bb71.2:                                           ; preds = %bb71.1
  br i1 true, label %bb84.thread.split.loop.exit71, label %bb71.145

bb71.145:                                         ; preds = %bb71.2
  br label %bb71.1.2

bb71.1.2:                                         ; preds = %bb71.145
  br i1 true, label %bb84.thread.split.loop.exit91, label %bb80.thread
}