summaryrefslogtreecommitdiff
path: root/test/CodeGen/PowerPC/select_lt0.ll
blob: 676c27fe57aed77abf014a5ef82a2007c7719e19 (plain)
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
; RUN: llvm-as < %s | llc -march=ppc32 | not grep cmp

int %seli32_1(int %a) {
entry:
	%tmp.1 = setlt int %a, 0
	%retval = select bool %tmp.1, int 5, int 0
	ret int %retval
}

int %seli32_2(int %a, int %b) {
entry:
	%tmp.1 = setlt int %a, 0
	%retval = select bool %tmp.1, int %b, int 0
	ret int %retval
}

int %seli32_3(int %a, short %b) {
entry:
	%tmp.2 = cast short %b to int
	%tmp.1 = setlt int %a, 0
	%retval = select bool %tmp.1, int %tmp.2, int 0
	ret int %retval
}

int %seli32_4(int %a, ushort %b) {
entry:
	%tmp.2 = cast ushort %b to int
	%tmp.1 = setlt int %a, 0
	%retval = select bool %tmp.1, int %tmp.2, int 0
	ret int %retval
}

short %seli16_1(short %a) {
entry:
	%tmp.1 = setlt short %a, 0
	%retval = select bool %tmp.1, short 7, short 0
	ret short %retval
}

short %seli16_2(int %a, short %b) {
	%tmp.1 = setlt int %a, 0
	%retval = select bool %tmp.1, short %b, short 0
	ret short %retval
}

int %seli32_a_a(int %a) {
        %tmp = setlt int %a, 1
        %min = select bool %tmp, int %a, int 0
        ret int %min
}