xref: /llvm-project/llvm/test/CodeGen/X86/uintr-intrinsics.ll (revision 0aef747b846586c29ed3285bbed20a3d607576fa)
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
2; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+uintr | FileCheck %s --check-prefix=X64
3; RUN: llc < %s -mtriple=x86_64-linux-gnux32 -mattr=+uintr | FileCheck %s --check-prefix=X32
4
5define i8 @test_uintr(i64 %arg) {
6; X64-LABEL: test_uintr:
7; X64:       # %bb.0: # %entry
8; X64-NEXT:    clui
9; X64-NEXT:    stui
10; X64-NEXT:    senduipi %rdi
11; X64-NEXT:    testui
12; X64-NEXT:    setb %al
13; X64-NEXT:    retq
14;
15; X32-LABEL: test_uintr:
16; X32:       # %bb.0: # %entry
17; X32-NEXT:    clui
18; X32-NEXT:    stui
19; X32-NEXT:    senduipi %rdi
20; X32-NEXT:    testui
21; X32-NEXT:    setb %al
22; X32-NEXT:    retq
23
24entry:
25  call void @llvm.x86.clui()
26  call void @llvm.x86.stui()
27  call void @llvm.x86.senduipi(i64 %arg)
28  %0 = call i8 @llvm.x86.testui()
29  ret i8 %0
30}
31
32declare void @llvm.x86.clui()
33declare void @llvm.x86.stui()
34declare i8 @llvm.x86.testui()
35declare void @llvm.x86.senduipi(i64 %arg)
36