2711055a046824b9962ea5a58c79c8a14e2351ba
[oota-llvm.git] / test / CodeGen / X86 / adx-intrinsics.ll
1 ; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=broadwell --show-mc-encoding| FileCheck %s --check-prefix=ADX --check-prefix=CHECK
2
3 declare i8 @llvm.x86.addcarryx.u32(i8, i32, i32, i8*)
4
5 define i8 @test_addcarryx_u32(i8 %c, i32 %a, i32 %b, i8* %ptr) {
6 ; CHECK-LABEL: test_addcarryx_u32
7 ; CHECK: addb
8 ; ADX: adcxl
9 ; CHECK: setb
10 ; CHECK: retq
11   %ret = tail call i8 @llvm.x86.addcarryx.u32(i8 %c, i32 %a, i32 %b, i8* %ptr)
12   ret i8 %ret;
13 }
14
15 declare i8 @llvm.x86.addcarryx.u64(i8, i64, i64, i8*)
16
17 define i8 @test_addcarryx_u64(i8 %c, i64 %a, i64 %b, i8* %ptr) {
18 ; CHECK-LABEL: test_addcarryx_u64
19 ; CHECK: addb
20 ; ADX: adcxq
21 ; CHECK: setb
22 ; CHECK: retq
23   %ret = tail call i8 @llvm.x86.addcarryx.u64(i8 %c, i64 %a, i64 %b, i8* %ptr)
24   ret i8 %ret;
25 }
26