23 lines
868 B
LLVM
23 lines
868 B
LLVM
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
|
|
; RUN: opt %loadexampleirtransforms -passes=tut-simplifycfg -tut-simplifycfg-version=v1 -S < %s | FileCheck %s
|
|
; RUN: opt %loadexampleirtransforms -passes=tut-simplifycfg -tut-simplifycfg-version=v2 -S < %s | FileCheck %s
|
|
; RUN: opt %loadexampleirtransforms -passes=tut-simplifycfg -tut-simplifycfg-version=v3 -S < %s | FileCheck %s
|
|
|
|
define ptr @simp1(i32 %x) {
|
|
; CHECK-LABEL: @simp1(
|
|
; CHECK-NEXT: entry:
|
|
; CHECK-NEXT: [[CMP:%.*]] = icmp slt i32 [[X:%.*]], 42
|
|
; CHECK-NEXT: [[ADDR:%.*]] = select i1 [[CMP]], ptr inttoptr (i32 1 to ptr), ptr inttoptr (i32 1 to ptr)
|
|
; CHECK-NEXT: ret ptr [[ADDR]]
|
|
;
|
|
entry:
|
|
%cmp = icmp slt i32 %x, 42
|
|
%addr = select i1 %cmp, ptr blockaddress(@simp1, %bb1), ptr blockaddress(@simp1, %bb2)
|
|
ret ptr %addr
|
|
|
|
bb1:
|
|
ret ptr null
|
|
|
|
bb2:
|
|
ret ptr null
|
|
}
|