blob: 501ab6ff4348e91b36d5fc432c8ca82166f1794f [file] [edit]
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc < %s -mtriple=x86_64-unknown-linux-gnu | FileCheck %s
declare i64 @llvm.x86.rdpmc(i32) #0
declare i64 @llvm.x86.rdpru(i32) #0
define i64 @f(i32 %0) {
; CHECK-LABEL: f:
; CHECK: # %bb.0:
; CHECK-NEXT: xorl %ecx, %ecx
; CHECK-NEXT: rdpmc
; CHECK-NEXT: movl %edi, %ecx
; CHECK-NEXT: rdpru
; CHECK-NEXT: shlq $32, %rdx
; CHECK-NEXT: orq %rdx, %rax
; CHECK-NEXT: retq
%2 = tail call i64 @llvm.x86.rdpmc(i32 0)
%3 = tail call i64 @llvm.x86.rdpru(i32 %0)
ret i64 %3
}
attributes #0 = { nounwind }