Mercurial > hg > CbC > CbC_llvm
view test/CodeGen/Thumb2/constant-islands-new-island.ll @ 146:3fc4d5c3e21e
set tail call flag for code segment in CGCAll
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 23 Dec 2018 19:23:36 +0900 |
parents | 803732b1fca8 |
children |
line wrap: on
line source
; RUN: llc < %s -mtriple=thumbv7-linux-gnueabihf %s -o - | FileCheck %s ; Check that new water is created by splitting the basic block after the ; load instruction. Previously, new water was created before the load ; instruction, which caused the pass to fail to converge. define void @test(i1 %tst) { ; CHECK-LABEL: test: ; CHECK: vldr {{s[0-9]+}}, [[CONST:\.LCPI[0-9]+_[0-9]+]] ; CHECK: b.w [[CONTINUE:\.LBB[0-9]+_[0-9]+]] ; CHECK: [[CONST]]: ; CHECK-NEXT: .long ; CHECK: [[CONTINUE]]: entry: br i1 %tst, label %true, label %false true: %val = phi float [12345.0, %entry], [undef, %false] call i32 @llvm.arm.space(i32 2000, i32 undef) call void @bar(float %val) ret void false: br label %true } declare void @bar(float) declare i32 @llvm.arm.space(i32, i32)