brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 57de350 Raw
58 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_test_checks.py2; RUN: opt -passes=hotcoldsplit -hotcoldsplit-threshold=0 -S < %s | FileCheck %s3target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"4target triple = "x86_64-apple-macosx10.14.0"5 6@G = external dso_local global i32, align 47 8define void @foo(i32) {9; CHECK-LABEL: @foo(10; CHECK-NEXT:    [[TMP2:%.*]] = icmp eq i32 [[TMP0:%.*]], 011; CHECK-NEXT:    tail call void @_Z10sideeffectv()12; CHECK-NEXT:    br i1 [[TMP2]], label [[CODEREPL:%.*]], label [[EXIT:%.*]]13; CHECK:       codeRepl:14; CHECK-NEXT:    call void @foo.cold.1() #[[ATTR2:[0-9]+]]15; CHECK-NEXT:    unreachable16; CHECK:       exit:17; CHECK-NEXT:    ret void18;19  %2 = icmp eq i32 %0, 020  tail call void @_Z10sideeffectv()21  br i1 %2, label %sink, label %exit22 23sink:24  tail call void @_Z10sideeffectv()25  call void @llvm.trap()26  unreachable27 28exit:29  ret void30}31 32define void @bar(i32) {33; CHECK-LABEL: @bar(34; CHECK-NEXT:    [[TMP2:%.*]] = icmp eq i32 [[TMP0:%.*]], 035; CHECK-NEXT:    tail call void @_Z10sideeffectv()36; CHECK-NEXT:    br i1 [[TMP2]], label [[CODEREPL:%.*]], label [[EXIT:%.*]]37; CHECK:       codeRepl:38; CHECK-NEXT:    call void @bar.cold.1() #[[ATTR2]]39; CHECK-NEXT:    unreachable40; CHECK:       exit:41; CHECK-NEXT:    ret void42;43  %2 = icmp eq i32 %0, 044  tail call void @_Z10sideeffectv()45  br i1 %2, label %sink, label %exit46 47sink:48  tail call void @_Z10sideeffectv()49  call void @llvm.trap()50  unreachable51 52exit:53  ret void54}55 56declare void @llvm.trap() noreturn cold memory(inaccessiblemem: write)57declare void @_Z10sideeffectv()58