mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-27 14:34:58 +00:00
add some nounwinds
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99752 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
cf3fed0fd4
commit
ba47ce1244
@ -9,66 +9,66 @@
|
||||
; RUN: llc < %s -march=ppc32 | \
|
||||
; RUN: grep nand | count 1
|
||||
|
||||
define i32 @EQV1(i32 %X, i32 %Y) {
|
||||
define i32 @EQV1(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %X, %Y ; <i32> [#uses=1]
|
||||
%B = xor i32 %A, -1 ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @EQV2(i32 %X, i32 %Y) {
|
||||
define i32 @EQV2(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %X, -1 ; <i32> [#uses=1]
|
||||
%B = xor i32 %A, %Y ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @EQV3(i32 %X, i32 %Y) {
|
||||
define i32 @EQV3(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %X, -1 ; <i32> [#uses=1]
|
||||
%B = xor i32 %Y, %A ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @ANDC1(i32 %X, i32 %Y) {
|
||||
define i32 @ANDC1(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %Y, -1 ; <i32> [#uses=1]
|
||||
%B = and i32 %X, %A ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @ANDC2(i32 %X, i32 %Y) {
|
||||
define i32 @ANDC2(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %X, -1 ; <i32> [#uses=1]
|
||||
%B = and i32 %A, %Y ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @ORC1(i32 %X, i32 %Y) {
|
||||
define i32 @ORC1(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %Y, -1 ; <i32> [#uses=1]
|
||||
%B = or i32 %X, %A ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @ORC2(i32 %X, i32 %Y) {
|
||||
define i32 @ORC2(i32 %X, i32 %Y) nounwind {
|
||||
%A = xor i32 %X, -1 ; <i32> [#uses=1]
|
||||
%B = or i32 %A, %Y ; <i32> [#uses=1]
|
||||
ret i32 %B
|
||||
}
|
||||
|
||||
define i32 @NOR1(i32 %X) {
|
||||
define i32 @NOR1(i32 %X) nounwind {
|
||||
%Y = xor i32 %X, -1 ; <i32> [#uses=1]
|
||||
ret i32 %Y
|
||||
}
|
||||
|
||||
define i32 @NOR2(i32 %X, i32 %Y) {
|
||||
define i32 @NOR2(i32 %X, i32 %Y) nounwind {
|
||||
%Z = or i32 %X, %Y ; <i32> [#uses=1]
|
||||
%R = xor i32 %Z, -1 ; <i32> [#uses=1]
|
||||
ret i32 %R
|
||||
}
|
||||
|
||||
define i32 @NAND1(i32 %X, i32 %Y) {
|
||||
define i32 @NAND1(i32 %X, i32 %Y) nounwind {
|
||||
%Z = and i32 %X, %Y ; <i32> [#uses=1]
|
||||
%W = xor i32 %Z, -1 ; <i32> [#uses=1]
|
||||
ret i32 %W
|
||||
}
|
||||
|
||||
define void @VNOR(<4 x float>* %P, <4 x float>* %Q) {
|
||||
define void @VNOR(<4 x float>* %P, <4 x float>* %Q) nounwind {
|
||||
%tmp = load <4 x float>* %P ; <<4 x float>> [#uses=1]
|
||||
%tmp.upgrd.1 = bitcast <4 x float> %tmp to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp2 = load <4 x float>* %Q ; <<4 x float>> [#uses=1]
|
||||
@ -80,7 +80,7 @@ define void @VNOR(<4 x float>* %P, <4 x float>* %Q) {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @VANDC(<4 x float>* %P, <4 x float>* %Q) {
|
||||
define void @VANDC(<4 x float>* %P, <4 x float>* %Q) nounwind {
|
||||
%tmp = load <4 x float>* %P ; <<4 x float>> [#uses=1]
|
||||
%tmp.upgrd.4 = bitcast <4 x float> %tmp to <4 x i32> ; <<4 x i32>> [#uses=1]
|
||||
%tmp2 = load <4 x float>* %Q ; <<4 x float>> [#uses=1]
|
||||
|
Loading…
x
Reference in New Issue
Block a user