comparison test/CodeGen/AArch64/compare-branch.ll @ 0:95c75e76d11b LLVM3.4

LLVM 3.4
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Thu, 12 Dec 2013 13:56:28 +0900
parents
children 54457678186b
comparison
equal deleted inserted replaced
-1:000000000000 0:95c75e76d11b
1 ; RUN: llc -verify-machineinstrs < %s -mtriple=aarch64-none-linux-gnu | FileCheck %s
2
3 @var32 = global i32 0
4 @var64 = global i64 0
5
6 define void @foo() {
7 ; CHECK-LABEL: foo:
8
9 %val1 = load volatile i32* @var32
10 %tst1 = icmp eq i32 %val1, 0
11 br i1 %tst1, label %end, label %test2
12 ; CHECK: cbz {{w[0-9]+}}, .LBB
13
14 test2:
15 %val2 = load volatile i32* @var32
16 %tst2 = icmp ne i32 %val2, 0
17 br i1 %tst2, label %end, label %test3
18 ; CHECK: cbnz {{w[0-9]+}}, .LBB
19
20 test3:
21 %val3 = load volatile i64* @var64
22 %tst3 = icmp eq i64 %val3, 0
23 br i1 %tst3, label %end, label %test4
24 ; CHECK: cbz {{x[0-9]+}}, .LBB
25
26 test4:
27 %val4 = load volatile i64* @var64
28 %tst4 = icmp ne i64 %val4, 0
29 br i1 %tst4, label %end, label %test5
30 ; CHECK: cbnz {{x[0-9]+}}, .LBB
31
32 test5:
33 store volatile i64 %val4, i64* @var64
34 ret void
35
36 end:
37 ret void
38 }