You've already forked linux-packaging-mono
Imported Upstream version 6.0.0.172
Former-commit-id: f3cc9b82f3e5bd8f0fd3ebc098f789556b44e9cd
This commit is contained in:
parent
8016999e4d
commit
64ac736ec5
93
external/llvm/test/CodeGen/ARM/fast-isel-mvn.ll
vendored
Normal file
93
external/llvm/test/CodeGen/ARM/fast-isel-mvn.ll
vendored
Normal file
@ -0,0 +1,93 @@
|
||||
; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort=1 -relocation-model=dynamic-no-pic -mattr=+no-movt -mtriple=armv7-apple-ios < %s | FileCheck %s --check-prefix=CHECK --check-prefix=ARM
|
||||
; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort=1 -relocation-model=dynamic-no-pic -mattr=+no-movt -mtriple=armv7-linux-gnueabi < %s | FileCheck %s --check-prefix=CHECK --check-prefix=ARM
|
||||
; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort=1 -relocation-model=dynamic-no-pic -mattr=+no-movt -mtriple=thumbv7-apple-ios < %s | FileCheck %s --check-prefix=CHECK --check-prefix=ARM
|
||||
; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort=1 -relocation-model=dynamic-no-pic -mtriple=thumbv7-apple-ios < %s | FileCheck %s --check-prefix=CHECK --check-prefix=THUMB
|
||||
; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort=1 -relocation-model=dynamic-no-pic -mtriple=armv7-apple-ios < %s | FileCheck %s --check-prefix=MOVT
|
||||
; rdar://10412592
|
||||
|
||||
define void @t1() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t1
|
||||
; CHECK: mvn r0, #0
|
||||
call void @foo(i32 -1)
|
||||
ret void
|
||||
}
|
||||
|
||||
declare void @foo(i32)
|
||||
|
||||
define void @t2() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t2
|
||||
; CHECK: mvn r0, #233
|
||||
call void @foo(i32 -234)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t3() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t3
|
||||
; CHECK: mvn r0, #256
|
||||
call void @foo(i32 -257)
|
||||
ret void
|
||||
}
|
||||
|
||||
; Load from constant pool
|
||||
define void @t4() nounwind {
|
||||
entry:
|
||||
; ARM-LABEL: t4
|
||||
; ARM: ldr r0
|
||||
; THUMB-LABEL: t4
|
||||
; THUMB: movw r0, #65278
|
||||
; THUMB: movt r0, #65535
|
||||
call void @foo(i32 -258)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t5() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t5
|
||||
; CHECK: mvn r0, #65280
|
||||
call void @foo(i32 -65281)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t6() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t6
|
||||
; CHECK: mvn r0, #978944
|
||||
call void @foo(i32 -978945)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t7() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t7
|
||||
; CHECK: mvn r0, #267386880
|
||||
call void @foo(i32 -267386881)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t8() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t8
|
||||
; CHECK: mvn r0, #65280
|
||||
call void @foo(i32 -65281)
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t9() nounwind {
|
||||
entry:
|
||||
; CHECK-LABEL: t9
|
||||
; CHECK: mvn r0, #2130706432
|
||||
call void @foo(i32 -2130706433)
|
||||
ret void
|
||||
}
|
||||
|
||||
; Load from constant pool.
|
||||
define i32 @t10(i32 %a) {
|
||||
; MOVT-LABEL: t10
|
||||
; MOVT: ldr
|
||||
%1 = xor i32 -1998730207, %a
|
||||
ret i32 %1
|
||||
}
|
||||
|
Reference in New Issue
Block a user