xref: /llvm-project/llvm/test/CodeGen/X86/system-intrinsics-xsaves.ll (revision 2f448bf509432c1a19ec46ab8cbc7353c03c6280)
1; RUN: llc < %s -mtriple=i686-unknown-unknown -mattr=+xsave,+xsaves | FileCheck %s
2
3define void @test_xsaves(ptr %ptr, i32 %hi, i32 %lo) {
4; CHECK-LABEL: test_xsaves
5; CHECK: movl   8(%esp), %edx
6; CHECK: movl   12(%esp), %eax
7; CHECK: movl   4(%esp), %ecx
8; CHECK: xsaves (%ecx)
9  call void @llvm.x86.xsaves(ptr %ptr, i32 %hi, i32 %lo)
10  ret void;
11}
12declare void @llvm.x86.xsaves(ptr, i32, i32)
13
14define void @test_xrstors(ptr %ptr, i32 %hi, i32 %lo) {
15; CHECK-LABEL: test_xrstors
16; CHECK: movl    8(%esp), %edx
17; CHECK: movl    12(%esp), %eax
18; CHECK: movl    4(%esp), %ecx
19; CHECK: xrstors (%ecx)
20  call void @llvm.x86.xrstors(ptr %ptr, i32 %hi, i32 %lo)
21  ret void;
22}
23declare void @llvm.x86.xrstors(ptr, i32, i32)
24