17 lines
488 B
LLVM
17 lines
488 B
LLVM
; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
|
; RUN: llc -mtriple=i386-apple-darwin -mcpu=corei7 -o - < %s | FileCheck %s
|
|
|
|
define i32 @func(i8* %A) nounwind readnone {
|
|
; CHECK-LABEL: func:
|
|
; CHECK: ## %bb.0: ## %entry
|
|
; CHECK-NEXT: movl {{[0-9]+}}(%esp), %eax
|
|
; CHECK-NEXT: roll $27, %eax
|
|
; CHECK-NEXT: retl
|
|
entry:
|
|
%tmp = ptrtoint i8* %A to i32
|
|
%shr = lshr i32 %tmp, 5
|
|
%shl = shl i32 %tmp, 27
|
|
%or = or i32 %shr, %shl
|
|
ret i32 %or
|
|
}
|