brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.2 KiB · 1687572 Raw
42 lines · plain
1; RUN: llc < %s -mtriple=x86_64-unknown-unknown -mattr=+xsave | FileCheck %s2 3define void @test_xsave(ptr %ptr, i32 %hi, i32 %lo) {4; CHECK-LABEL: test_xsave5; CHECK: movl  %edx, %eax6; CHECK: movl  %esi, %edx7; CHECK: xsave (%rdi)8  call void @llvm.x86.xsave(ptr %ptr, i32 %hi, i32 %lo)9  ret void;10}11declare void @llvm.x86.xsave(ptr, i32, i32)12 13define void @test_xsave64(ptr %ptr, i32 %hi, i32 %lo) {14; CHECK-LABEL: test_xsave6415; CHECK: movl    %edx, %eax16; CHECK: movl    %esi, %edx17; CHECK: xsave64 (%rdi)18  call void @llvm.x86.xsave64(ptr %ptr, i32 %hi, i32 %lo)19  ret void;20}21declare void @llvm.x86.xsave64(ptr, i32, i32)22 23define void @test_xrstor(ptr %ptr, i32 %hi, i32 %lo) {24; CHECK-LABEL: test_xrstor25; CHECK: movl   %edx, %eax26; CHECK: movl   %esi, %edx27; CHECK: xrstor (%rdi)28  call void @llvm.x86.xrstor(ptr %ptr, i32 %hi, i32 %lo)29  ret void;30}31declare void @llvm.x86.xrstor(ptr, i32, i32)32 33define void @test_xrstor64(ptr %ptr, i32 %hi, i32 %lo) {34; CHECK-LABEL: test_xrstor6435; CHECK: movl     %edx, %eax36; CHECK: movl     %esi, %edx37; CHECK: xrstor64 (%rdi)38  call void @llvm.x86.xrstor64(ptr %ptr, i32 %hi, i32 %lo)39  ret void;40}41declare void @llvm.x86.xrstor64(ptr, i32, i32)42