1 ; Example input for update_llc_test_checks (taken from CodeGen/X86/iabs.ll)
2 ; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X86 --check-prefix=X86-NO-CMOV
3 ; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+cmov | FileCheck %s --check-prefix=X86 --check-prefix=X86-CMOV
4 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64
6 define i8 @test_i8(i8 %a) nounwind {
7 %tmp1neg = sub i8 0, %a
8 %b = icmp sgt i8 %a, -1
9 %abs = select i1 %b, i8 %a, i8 %tmp1neg
13 define i16 @test_i16(i16 %a) nounwind {
14 %tmp1neg = sub i16 0, %a
15 %b = icmp sgt i16 %a, -1
16 %abs = select i1 %b, i16 %a, i16 %tmp1neg
20 define i32 @test_i32(i32 %a) nounwind {
21 %tmp1neg = sub i32 0, %a
22 %b = icmp sgt i32 %a, -1
23 %abs = select i1 %b, i32 %a, i32 %tmp1neg
27 define i64 @test_i64(i64 %a) nounwind {
28 %tmp1neg = sub i64 0, %a
29 %b = icmp sgt i64 %a, -1
30 %abs = select i1 %b, i64 %a, i64 %tmp1neg