mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-15 04:30:12 +00:00
Clean up function attributes on PPC fast-isel tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@243079 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
33a9a09cd7
commit
168ef66330
@ -2,7 +2,7 @@
|
||||
|
||||
; Test add with non-legal types
|
||||
|
||||
define void @add_i8(i8 %a, i8 %b) nounwind ssp {
|
||||
define void @add_i8(i8 %a, i8 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: add_i8
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -12,7 +12,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @add_i8_imm(i8 %a) nounwind ssp {
|
||||
define void @add_i8_imm(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: add_i8_imm
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -22,7 +22,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @add_i16(i16 %a, i16 %b) nounwind ssp {
|
||||
define void @add_i16(i16 %a, i16 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: add_i16
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -32,7 +32,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @add_i16_imm(i16 %a, i16 %b) nounwind ssp {
|
||||
define void @add_i16_imm(i16 %a, i16 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: add_i16_imm
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -44,7 +44,7 @@ entry:
|
||||
|
||||
; Test or with non-legal types
|
||||
|
||||
define void @or_i8(i8 %a, i8 %b) nounwind ssp {
|
||||
define void @or_i8(i8 %a, i8 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: or_i8
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -54,7 +54,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @or_i8_imm(i8 %a) nounwind ssp {
|
||||
define void @or_i8_imm(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: or_i8_imm
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -64,7 +64,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @or_i16(i16 %a, i16 %b) nounwind ssp {
|
||||
define void @or_i16(i16 %a, i16 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: or_i16
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -74,7 +74,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @or_i16_imm(i16 %a) nounwind ssp {
|
||||
define void @or_i16_imm(i16 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: or_i16_imm
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -86,7 +86,7 @@ entry:
|
||||
|
||||
; Test sub with non-legal types
|
||||
|
||||
define void @sub_i8(i8 %a, i8 %b) nounwind ssp {
|
||||
define void @sub_i8(i8 %a, i8 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sub_i8
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -96,7 +96,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sub_i8_imm(i8 %a) nounwind ssp {
|
||||
define void @sub_i8_imm(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: sub_i8_imm
|
||||
%a.addr = alloca i8, align 4
|
||||
@ -106,7 +106,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sub_i16(i16 %a, i16 %b) nounwind ssp {
|
||||
define void @sub_i16(i16 %a, i16 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sub_i16
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -116,7 +116,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sub_i16_imm(i16 %a) nounwind ssp {
|
||||
define void @sub_i16_imm(i16 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: sub_i16_imm
|
||||
%a.addr = alloca i16, align 4
|
||||
@ -126,7 +126,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sub_i16_badimm(i16 %a) nounwind ssp {
|
||||
define void @sub_i16_badimm(i16 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: sub_i16_imm
|
||||
%a.addr = alloca i16, align 4
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 | FileCheck %s --check-prefix=ELF64
|
||||
|
||||
define i32 @t1(i32 %a, i32 %b) nounwind uwtable ssp {
|
||||
define i32 @t1(i32 %a, i32 %b) nounwind {
|
||||
entry:
|
||||
; ELF64: t1
|
||||
%x = add i32 %a, %b
|
||||
|
@ -56,7 +56,7 @@ declare zeroext i16 @t6();
|
||||
declare signext i8 @t7();
|
||||
declare zeroext i8 @t8();
|
||||
|
||||
define i32 @t10(i32 %argc, i8** nocapture %argv) {
|
||||
define i32 @t10(i32 %argc, i8** nocapture %argv) nounwind {
|
||||
entry:
|
||||
; ELF64: t10
|
||||
%call = call i32 @bar(i8 zeroext 0, i8 zeroext -8, i8 zeroext -69, i8 zeroext 28, i8 zeroext 40, i8 zeroext -70)
|
||||
@ -97,9 +97,9 @@ define i32 @bar0(i32 %i) nounwind {
|
||||
; ret i32 %tmp1
|
||||
;}
|
||||
|
||||
declare void @float_foo(float %f) ssp
|
||||
declare void @float_foo(float %f)
|
||||
|
||||
define void @float_const() ssp {
|
||||
define void @float_const() nounwind {
|
||||
entry:
|
||||
; ELF64: float_const
|
||||
call void @float_foo(float 0x401C666660000000)
|
||||
@ -108,7 +108,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @float_reg(float %dummy, float %f) ssp {
|
||||
define void @float_reg(float %dummy, float %f) nounwind {
|
||||
entry:
|
||||
; ELF64: float_reg
|
||||
call void @float_foo(float %f)
|
||||
@ -116,9 +116,9 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
declare void @double_foo(double %d) ssp
|
||||
declare void @double_foo(double %d)
|
||||
|
||||
define void @double_const() ssp {
|
||||
define void @double_const() nounwind {
|
||||
entry:
|
||||
; ELF64: double_const
|
||||
call void @double_foo(double 0x1397723CCABD0000401C666660000000)
|
||||
@ -127,7 +127,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @double_reg(double %dummy, double %d) ssp {
|
||||
define void @double_reg(double %dummy, double %d) nounwind {
|
||||
entry:
|
||||
; ELF64: double_reg
|
||||
call void @double_foo(double %d)
|
||||
|
@ -3,7 +3,7 @@
|
||||
; When fastisel better supports VSX fix up this test case.
|
||||
;
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -mattr=-vsx | FileCheck %s --check-prefix=ELF64
|
||||
define void @t1a(float %a) uwtable ssp {
|
||||
define void @t1a(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t1a
|
||||
%cmp = fcmp oeq float %a, 0.000000e+00
|
||||
@ -22,7 +22,7 @@ if.end: ; preds = %if.then, %entry
|
||||
|
||||
declare void @foo()
|
||||
|
||||
define void @t1b(float %a) uwtable ssp {
|
||||
define void @t1b(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t1b
|
||||
%cmp = fcmp oeq float %a, -0.000000e+00
|
||||
@ -39,7 +39,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t2a(double %a) uwtable ssp {
|
||||
define void @t2a(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t2a
|
||||
%cmp = fcmp oeq double %a, 0.000000e+00
|
||||
@ -56,7 +56,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t2b(double %a) uwtable ssp {
|
||||
define void @t2b(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t2b
|
||||
%cmp = fcmp oeq double %a, -0.000000e+00
|
||||
@ -73,7 +73,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t4(i8 signext %a) uwtable ssp {
|
||||
define void @t4(i8 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t4
|
||||
%cmp = icmp eq i8 %a, -1
|
||||
@ -89,7 +89,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t5(i8 zeroext %a) uwtable ssp {
|
||||
define void @t5(i8 zeroext %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t5
|
||||
%cmp = icmp eq i8 %a, 1
|
||||
@ -105,7 +105,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t6(i16 signext %a) uwtable ssp {
|
||||
define void @t6(i16 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t6
|
||||
%cmp = icmp eq i16 %a, -1
|
||||
@ -121,7 +121,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t7(i16 zeroext %a) uwtable ssp {
|
||||
define void @t7(i16 zeroext %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t7
|
||||
%cmp = icmp eq i16 %a, 1
|
||||
@ -137,7 +137,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t8(i32 %a) uwtable ssp {
|
||||
define void @t8(i32 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t8
|
||||
%cmp = icmp eq i32 %a, -1
|
||||
@ -152,7 +152,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t9(i32 %a) uwtable ssp {
|
||||
define void @t9(i32 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t9
|
||||
%cmp = icmp eq i32 %a, 1
|
||||
@ -167,7 +167,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t10(i32 %a) uwtable ssp {
|
||||
define void @t10(i32 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t10
|
||||
%cmp = icmp eq i32 %a, 384
|
||||
@ -182,7 +182,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t11(i32 %a) uwtable ssp {
|
||||
define void @t11(i32 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t11
|
||||
%cmp = icmp eq i32 %a, 4096
|
||||
@ -197,7 +197,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t12(i8 %a) uwtable ssp {
|
||||
define void @t12(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t12
|
||||
%cmp = icmp ugt i8 %a, -113
|
||||
@ -229,7 +229,7 @@ if.end: ; preds = %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t14(i64 %a) uwtable ssp {
|
||||
define void @t14(i64 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t14
|
||||
%cmp = icmp eq i64 %a, -1
|
||||
@ -244,7 +244,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t15(i64 %a) uwtable ssp {
|
||||
define void @t15(i64 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t15
|
||||
%cmp = icmp eq i64 %a, 1
|
||||
@ -259,7 +259,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t16(i64 %a) uwtable ssp {
|
||||
define void @t16(i64 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t16
|
||||
%cmp = icmp eq i64 %a, 384
|
||||
@ -274,7 +274,7 @@ if.end: ; preds = %if.then, %entry
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t17(i64 %a) uwtable ssp {
|
||||
define void @t17(i64 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: t17
|
||||
%cmp = icmp eq i64 %a, 32768
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -mattr=-vsx | FileCheck %s --check-prefix=ELF64
|
||||
|
||||
define zeroext i1 @testi1(i8 %in) nounwind uwtable ssp {
|
||||
define zeroext i1 @testi1(i8 %in) nounwind {
|
||||
entry:
|
||||
%c = icmp eq i8 %in, 5
|
||||
br i1 %c, label %true, label %false
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
; Test sitofp
|
||||
|
||||
define void @sitofp_double_i32(i32 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i32(i32 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i32
|
||||
%b.addr = alloca double, align 8
|
||||
@ -14,7 +14,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i64(i64 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i64(i64 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i64
|
||||
%b.addr = alloca double, align 8
|
||||
@ -26,7 +26,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i16(i16 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i16(i16 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i16
|
||||
%b.addr = alloca double, align 8
|
||||
@ -39,7 +39,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i8(i8 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i8(i8 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i8
|
||||
%b.addr = alloca double, align 8
|
||||
@ -54,7 +54,7 @@ entry:
|
||||
|
||||
; Test fptosi
|
||||
|
||||
define void @fptosi_float_i32(float %a) nounwind ssp {
|
||||
define void @fptosi_float_i32(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_float_i32
|
||||
%b.addr = alloca i32, align 4
|
||||
@ -66,7 +66,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_float_i64(float %a) nounwind ssp {
|
||||
define void @fptosi_float_i64(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_float_i64
|
||||
%b.addr = alloca i64, align 4
|
||||
@ -78,7 +78,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_double_i32(double %a) nounwind ssp {
|
||||
define void @fptosi_double_i32(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_double_i32
|
||||
%b.addr = alloca i32, align 8
|
||||
@ -90,7 +90,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_double_i64(double %a) nounwind ssp {
|
||||
define void @fptosi_double_i64(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_double_i64
|
||||
%b.addr = alloca i64, align 8
|
||||
@ -104,7 +104,7 @@ entry:
|
||||
|
||||
; Test fptoui
|
||||
|
||||
define void @fptoui_float_i32(float %a) nounwind ssp {
|
||||
define void @fptoui_float_i32(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_float_i32
|
||||
%b.addr = alloca i32, align 4
|
||||
@ -116,7 +116,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptoui_double_i32(double %a) nounwind ssp {
|
||||
define void @fptoui_double_i32(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_double_i32
|
||||
%b.addr = alloca i32, align 8
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
; Test sitofp
|
||||
|
||||
define void @sitofp_single_i64(i64 %a, float %b) nounwind ssp {
|
||||
define void @sitofp_single_i64(i64 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_single_i64
|
||||
; ELF64LE: sitofp_single_i64
|
||||
@ -32,7 +32,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_single_i32(i32 %a, float %b) nounwind ssp {
|
||||
define void @sitofp_single_i32(i32 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_single_i32
|
||||
; ELF64LE: sitofp_single_i32
|
||||
@ -57,7 +57,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_single_i16(i16 %a, float %b) nounwind ssp {
|
||||
define void @sitofp_single_i16(i16 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_single_i16
|
||||
; ELF64LE: sitofp_single_i16
|
||||
@ -81,7 +81,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_single_i8(i8 %a) nounwind ssp {
|
||||
define void @sitofp_single_i8(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_single_i8
|
||||
; ELF64LE: sitofp_single_i8
|
||||
@ -105,7 +105,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i32(i32 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i32(i32 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i32
|
||||
; ELF64LE: sitofp_double_i32
|
||||
@ -129,7 +129,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i64(i64 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i64(i64 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i64
|
||||
; ELF64LE: sitofp_double_i64
|
||||
@ -149,7 +149,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i16(i16 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i16(i16 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i16
|
||||
; ELF64LE: sitofp_double_i16
|
||||
@ -172,7 +172,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @sitofp_double_i8(i8 %a, double %b) nounwind ssp {
|
||||
define void @sitofp_double_i8(i8 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: sitofp_double_i8
|
||||
; ELF64LE: sitofp_double_i8
|
||||
@ -197,7 +197,7 @@ entry:
|
||||
|
||||
; Test uitofp
|
||||
|
||||
define void @uitofp_single_i64(i64 %a, float %b) nounwind ssp {
|
||||
define void @uitofp_single_i64(i64 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_single_i64
|
||||
; ELF64LE: uitofp_single_i64
|
||||
@ -215,7 +215,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_single_i32(i32 %a, float %b) nounwind ssp {
|
||||
define void @uitofp_single_i32(i32 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_single_i32
|
||||
; ELF64LE: uitofp_single_i32
|
||||
@ -238,7 +238,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_single_i16(i16 %a, float %b) nounwind ssp {
|
||||
define void @uitofp_single_i16(i16 %a, float %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_single_i16
|
||||
; ELF64LE: uitofp_single_i16
|
||||
@ -262,7 +262,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_single_i8(i8 %a) nounwind ssp {
|
||||
define void @uitofp_single_i8(i8 %a) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_single_i8
|
||||
; ELF64LE: uitofp_single_i8
|
||||
@ -286,7 +286,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_double_i64(i64 %a, double %b) nounwind ssp {
|
||||
define void @uitofp_double_i64(i64 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_double_i64
|
||||
; ELF64LE: uitofp_double_i64
|
||||
@ -304,7 +304,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_double_i32(i32 %a, double %b) nounwind ssp {
|
||||
define void @uitofp_double_i32(i32 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_double_i32
|
||||
; ELF64LE: uitofp_double_i32
|
||||
@ -327,7 +327,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_double_i16(i16 %a, double %b) nounwind ssp {
|
||||
define void @uitofp_double_i16(i16 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_double_i16
|
||||
; ELF64LE: uitofp_double_i16
|
||||
@ -350,7 +350,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @uitofp_double_i8(i8 %a, double %b) nounwind ssp {
|
||||
define void @uitofp_double_i8(i8 %a, double %b) nounwind {
|
||||
entry:
|
||||
; ELF64: uitofp_double_i8
|
||||
; ELF64LE: uitofp_double_i8
|
||||
@ -375,7 +375,7 @@ entry:
|
||||
|
||||
; Test fptosi
|
||||
|
||||
define void @fptosi_float_i32(float %a) nounwind ssp {
|
||||
define void @fptosi_float_i32(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_float_i32
|
||||
; ELF64LE: fptosi_float_i32
|
||||
@ -395,7 +395,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_float_i64(float %a) nounwind ssp {
|
||||
define void @fptosi_float_i64(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_float_i64
|
||||
; ELF64LE: fptosi_float_i64
|
||||
@ -415,7 +415,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_double_i32(double %a) nounwind ssp {
|
||||
define void @fptosi_double_i32(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_double_i32
|
||||
; ELF64LE: fptosi_double_i32
|
||||
@ -435,7 +435,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptosi_double_i64(double %a) nounwind ssp {
|
||||
define void @fptosi_double_i64(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptosi_double_i64
|
||||
; ELF64LE: fptosi_double_i64
|
||||
@ -457,7 +457,7 @@ entry:
|
||||
|
||||
; Test fptoui
|
||||
|
||||
define void @fptoui_float_i32(float %a) nounwind ssp {
|
||||
define void @fptoui_float_i32(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_float_i32
|
||||
; ELF64LE: fptoui_float_i32
|
||||
@ -477,7 +477,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptoui_float_i64(float %a) nounwind ssp {
|
||||
define void @fptoui_float_i64(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_float_i64
|
||||
; ELF64LE: fptoui_float_i64
|
||||
@ -495,7 +495,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptoui_double_i32(double %a) nounwind ssp {
|
||||
define void @fptoui_double_i32(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_double_i32
|
||||
; ELF64LE: fptoui_double_i32
|
||||
@ -515,7 +515,7 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @fptoui_double_i64(double %a) nounwind ssp {
|
||||
define void @fptoui_double_i64(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64: fptoui_double_i64
|
||||
; ELF64LE: fptoui_double_i64
|
||||
|
@ -11,12 +11,12 @@ entry:
|
||||
ret void
|
||||
}
|
||||
|
||||
define internal i32 @_Z13get_global_idj(i32 %dim) nounwind ssp {
|
||||
define internal i32 @_Z13get_global_idj(i32 %dim) nounwind {
|
||||
entry:
|
||||
ret i32 undef
|
||||
}
|
||||
|
||||
define void @wrap(i8 addrspace(1)* addrspace(1)* %arglist, i32 addrspace(1)* %gtid) nounwind ssp {
|
||||
define void @wrap(i8 addrspace(1)* addrspace(1)* %arglist, i32 addrspace(1)* %gtid) nounwind {
|
||||
entry:
|
||||
call void @stretch(<4 x i8> addrspace(1)* undef, <4 x i8> addrspace(1)* undef, i32 undef, i32 undef, i32 undef, i32 undef, <2 x float> undef, <4 x float> undef)
|
||||
ret void
|
||||
|
@ -2,35 +2,35 @@
|
||||
|
||||
; zext
|
||||
|
||||
define i32 @zext_8_32(i8 %a) nounwind ssp {
|
||||
define i32 @zext_8_32(i8 %a) nounwind {
|
||||
; ELF64: zext_8_32
|
||||
%r = zext i8 %a to i32
|
||||
; ELF64: clrlwi {{[0-9]+}}, {{[0-9]+}}, 24
|
||||
ret i32 %r
|
||||
}
|
||||
|
||||
define i32 @zext_16_32(i16 %a) nounwind ssp {
|
||||
define i32 @zext_16_32(i16 %a) nounwind {
|
||||
; ELF64: zext_16_32
|
||||
%r = zext i16 %a to i32
|
||||
; ELF64: clrlwi {{[0-9]+}}, {{[0-9]+}}, 16
|
||||
ret i32 %r
|
||||
}
|
||||
|
||||
define i64 @zext_8_64(i8 %a) nounwind ssp {
|
||||
define i64 @zext_8_64(i8 %a) nounwind {
|
||||
; ELF64: zext_8_64
|
||||
%r = zext i8 %a to i64
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 56
|
||||
ret i64 %r
|
||||
}
|
||||
|
||||
define i64 @zext_16_64(i16 %a) nounwind ssp {
|
||||
define i64 @zext_16_64(i16 %a) nounwind {
|
||||
; ELF64: zext_16_64
|
||||
%r = zext i16 %a to i64
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 48
|
||||
ret i64 %r
|
||||
}
|
||||
|
||||
define i64 @zext_32_64(i32 %a) nounwind ssp {
|
||||
define i64 @zext_32_64(i32 %a) nounwind {
|
||||
; ELF64: zext_32_64
|
||||
%r = zext i32 %a to i64
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 32
|
||||
@ -39,35 +39,35 @@ define i64 @zext_32_64(i32 %a) nounwind ssp {
|
||||
|
||||
; sext
|
||||
|
||||
define i32 @sext_8_32(i8 %a) nounwind ssp {
|
||||
define i32 @sext_8_32(i8 %a) nounwind {
|
||||
; ELF64: sext_8_32
|
||||
%r = sext i8 %a to i32
|
||||
; ELF64: extsb
|
||||
ret i32 %r
|
||||
}
|
||||
|
||||
define i32 @sext_16_32(i16 %a) nounwind ssp {
|
||||
define i32 @sext_16_32(i16 %a) nounwind {
|
||||
; ELF64: sext_16_32
|
||||
%r = sext i16 %a to i32
|
||||
; ELF64: extsh
|
||||
ret i32 %r
|
||||
}
|
||||
|
||||
define i64 @sext_8_64(i8 %a) nounwind ssp {
|
||||
define i64 @sext_8_64(i8 %a) nounwind {
|
||||
; ELF64: sext_8_64
|
||||
%r = sext i8 %a to i64
|
||||
; ELF64: extsb
|
||||
ret i64 %r
|
||||
}
|
||||
|
||||
define i64 @sext_16_64(i16 %a) nounwind ssp {
|
||||
define i64 @sext_16_64(i16 %a) nounwind {
|
||||
; ELF64: sext_16_64
|
||||
%r = sext i16 %a to i64
|
||||
; ELF64: extsh
|
||||
ret i64 %r
|
||||
}
|
||||
|
||||
define i64 @sext_32_64(i32 %a) nounwind ssp {
|
||||
define i64 @sext_32_64(i32 %a) nounwind {
|
||||
; ELF64: sext_32_64
|
||||
%r = sext i32 %a to i64
|
||||
; ELF64: extsw
|
||||
|
@ -4,7 +4,7 @@
|
||||
@b = global i16 2, align 2
|
||||
@c = global i32 4, align 4
|
||||
|
||||
define void @t1() nounwind uwtable ssp {
|
||||
define void @t1() nounwind {
|
||||
; ELF64: t1
|
||||
%1 = load i8, i8* @a, align 1
|
||||
call void @foo1(i8 zeroext %1)
|
||||
@ -14,7 +14,7 @@ define void @t1() nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t2() nounwind uwtable ssp {
|
||||
define void @t2() nounwind {
|
||||
; ELF64: t2
|
||||
%1 = load i16, i16* @b, align 2
|
||||
call void @foo2(i16 zeroext %1)
|
||||
@ -24,7 +24,7 @@ define void @t2() nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t2a() nounwind uwtable ssp {
|
||||
define void @t2a() nounwind {
|
||||
; ELF64: t2a
|
||||
%1 = load i32, i32* @c, align 4
|
||||
call void @foo3(i32 zeroext %1)
|
||||
@ -38,7 +38,7 @@ declare void @foo1(i8 zeroext)
|
||||
declare void @foo2(i16 zeroext)
|
||||
declare void @foo3(i32 zeroext)
|
||||
|
||||
define i32 @t3() nounwind uwtable ssp {
|
||||
define i32 @t3() nounwind {
|
||||
; ELF64: t3
|
||||
%1 = load i8, i8* @a, align 1
|
||||
%2 = zext i8 %1 to i32
|
||||
@ -47,7 +47,7 @@ define i32 @t3() nounwind uwtable ssp {
|
||||
ret i32 %2
|
||||
}
|
||||
|
||||
define i32 @t4() nounwind uwtable ssp {
|
||||
define i32 @t4() nounwind {
|
||||
; ELF64: t4
|
||||
%1 = load i16, i16* @b, align 2
|
||||
%2 = zext i16 %1 to i32
|
||||
@ -56,7 +56,7 @@ define i32 @t4() nounwind uwtable ssp {
|
||||
ret i32 %2
|
||||
}
|
||||
|
||||
define i32 @t5() nounwind uwtable ssp {
|
||||
define i32 @t5() nounwind {
|
||||
; ELF64: t5
|
||||
%1 = load i16, i16* @b, align 2
|
||||
%2 = sext i16 %1 to i32
|
||||
@ -65,7 +65,7 @@ define i32 @t5() nounwind uwtable ssp {
|
||||
ret i32 %2
|
||||
}
|
||||
|
||||
define i32 @t6() nounwind uwtable ssp {
|
||||
define i32 @t6() nounwind {
|
||||
; ELF64: t6
|
||||
%1 = load i8, i8* @a, align 2
|
||||
%2 = sext i8 %1 to i32
|
||||
@ -74,7 +74,7 @@ define i32 @t6() nounwind uwtable ssp {
|
||||
ret i32 %2
|
||||
}
|
||||
|
||||
define i64 @t7() nounwind uwtable ssp {
|
||||
define i64 @t7() nounwind {
|
||||
; ELF64: t7
|
||||
%1 = load i8, i8* @a, align 1
|
||||
%2 = zext i8 %1 to i64
|
||||
@ -83,7 +83,7 @@ define i64 @t7() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define i64 @t8() nounwind uwtable ssp {
|
||||
define i64 @t8() nounwind {
|
||||
; ELF64: t8
|
||||
%1 = load i16, i16* @b, align 2
|
||||
%2 = zext i16 %1 to i64
|
||||
@ -92,7 +92,7 @@ define i64 @t8() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define i64 @t9() nounwind uwtable ssp {
|
||||
define i64 @t9() nounwind {
|
||||
; ELF64: t9
|
||||
%1 = load i16, i16* @b, align 2
|
||||
%2 = sext i16 %1 to i64
|
||||
@ -101,7 +101,7 @@ define i64 @t9() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define i64 @t10() nounwind uwtable ssp {
|
||||
define i64 @t10() nounwind {
|
||||
; ELF64: t10
|
||||
%1 = load i8, i8* @a, align 2
|
||||
%2 = sext i8 %1 to i64
|
||||
@ -110,7 +110,7 @@ define i64 @t10() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define i64 @t11() nounwind uwtable ssp {
|
||||
define i64 @t11() nounwind {
|
||||
; ELF64: t11
|
||||
%1 = load i32, i32* @c, align 4
|
||||
%2 = zext i32 %1 to i64
|
||||
@ -119,7 +119,7 @@ define i64 @t11() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define i64 @t12() nounwind uwtable ssp {
|
||||
define i64 @t12() nounwind {
|
||||
; ELF64: t12
|
||||
%1 = load i32, i32* @c, align 4
|
||||
%2 = sext i32 %1 to i64
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 | FileCheck %s --check-prefix=ELF64
|
||||
|
||||
define void @t1(i8* %x) {
|
||||
define void @t1(i8* %x) nounwind {
|
||||
entry:
|
||||
; ELF64: t1
|
||||
br label %L0
|
||||
|
@ -24,7 +24,7 @@
|
||||
|
||||
; load
|
||||
|
||||
define i8 @t1() nounwind uwtable ssp {
|
||||
define i8 @t1() nounwind {
|
||||
; ELF64: t1
|
||||
%1 = load i8, i8* @a, align 1
|
||||
; ELF64: lbz
|
||||
@ -33,7 +33,7 @@ define i8 @t1() nounwind uwtable ssp {
|
||||
ret i8 %2
|
||||
}
|
||||
|
||||
define i16 @t2() nounwind uwtable ssp {
|
||||
define i16 @t2() nounwind {
|
||||
; ELF64: t2
|
||||
%1 = load i16, i16* @b, align 2
|
||||
; ELF64: lhz
|
||||
@ -42,7 +42,7 @@ define i16 @t2() nounwind uwtable ssp {
|
||||
ret i16 %2
|
||||
}
|
||||
|
||||
define i32 @t3() nounwind uwtable ssp {
|
||||
define i32 @t3() nounwind {
|
||||
; ELF64: t3
|
||||
%1 = load i32, i32* @c, align 4
|
||||
; ELF64: lwz
|
||||
@ -51,7 +51,7 @@ define i32 @t3() nounwind uwtable ssp {
|
||||
ret i32 %2
|
||||
}
|
||||
|
||||
define i64 @t4() nounwind uwtable ssp {
|
||||
define i64 @t4() nounwind {
|
||||
; ELF64: t4
|
||||
%1 = load i64, i64* @d, align 4
|
||||
; ELF64: ld
|
||||
@ -60,7 +60,7 @@ define i64 @t4() nounwind uwtable ssp {
|
||||
ret i64 %2
|
||||
}
|
||||
|
||||
define float @t5() nounwind uwtable ssp {
|
||||
define float @t5() nounwind {
|
||||
; ELF64: t5
|
||||
%1 = load float, float* @e, align 4
|
||||
; ELF64: lfs
|
||||
@ -69,7 +69,7 @@ define float @t5() nounwind uwtable ssp {
|
||||
ret float %2
|
||||
}
|
||||
|
||||
define double @t6() nounwind uwtable ssp {
|
||||
define double @t6() nounwind {
|
||||
; ELF64: t6
|
||||
%1 = load double, double* @f, align 8
|
||||
; ELF64: lfd
|
||||
@ -80,7 +80,7 @@ define double @t6() nounwind uwtable ssp {
|
||||
|
||||
; store
|
||||
|
||||
define void @t7(i8 %v) nounwind uwtable ssp {
|
||||
define void @t7(i8 %v) nounwind {
|
||||
; ELF64: t7
|
||||
%1 = add nsw i8 %v, 1
|
||||
store i8 %1, i8* @a, align 1
|
||||
@ -91,7 +91,7 @@ define void @t7(i8 %v) nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t8(i16 %v) nounwind uwtable ssp {
|
||||
define void @t8(i16 %v) nounwind {
|
||||
; ELF64: t8
|
||||
%1 = add nsw i16 %v, 1
|
||||
store i16 %1, i16* @b, align 2
|
||||
@ -102,7 +102,7 @@ define void @t8(i16 %v) nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t9(i32 %v) nounwind uwtable ssp {
|
||||
define void @t9(i32 %v) nounwind {
|
||||
; ELF64: t9
|
||||
%1 = add nsw i32 %v, 1
|
||||
store i32 %1, i32* @c, align 4
|
||||
@ -113,7 +113,7 @@ define void @t9(i32 %v) nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t10(i64 %v) nounwind uwtable ssp {
|
||||
define void @t10(i64 %v) nounwind {
|
||||
; ELF64: t10
|
||||
%1 = add nsw i64 %v, 1
|
||||
store i64 %1, i64* @d, align 4
|
||||
@ -124,7 +124,7 @@ define void @t10(i64 %v) nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t11(float %v) nounwind uwtable ssp {
|
||||
define void @t11(float %v) nounwind {
|
||||
; ELF64: t11
|
||||
%1 = fadd float %v, 1.0
|
||||
store float %1, float* @e, align 4
|
||||
@ -133,7 +133,7 @@ define void @t11(float %v) nounwind uwtable ssp {
|
||||
ret void
|
||||
}
|
||||
|
||||
define void @t12(double %v) nounwind uwtable ssp {
|
||||
define void @t12(double %v) nounwind {
|
||||
; ELF64: t12
|
||||
%1 = fadd double %v, 1.0
|
||||
store double %1, double* @f, align 8
|
||||
@ -143,7 +143,7 @@ define void @t12(double %v) nounwind uwtable ssp {
|
||||
}
|
||||
|
||||
;; lwa requires an offset divisible by 4, so we need lwax here.
|
||||
define i64 @t13() nounwind uwtable ssp {
|
||||
define i64 @t13() nounwind {
|
||||
; ELF64: t13
|
||||
%1 = load i32, i32* getelementptr inbounds (%struct.s, %struct.s* @g, i32 0, i32 1), align 1
|
||||
%2 = sext i32 %1 to i64
|
||||
@ -155,7 +155,7 @@ define i64 @t13() nounwind uwtable ssp {
|
||||
}
|
||||
|
||||
;; ld requires an offset divisible by 4, so we need ldx here.
|
||||
define i64 @t14() nounwind uwtable ssp {
|
||||
define i64 @t14() nounwind {
|
||||
; ELF64: t14
|
||||
%1 = load i64, i64* getelementptr inbounds (%struct.t, %struct.t* @h, i32 0, i32 1), align 1
|
||||
; ELF64: li
|
||||
@ -166,7 +166,7 @@ define i64 @t14() nounwind uwtable ssp {
|
||||
}
|
||||
|
||||
;; std requires an offset divisible by 4, so we need stdx here.
|
||||
define void @t15(i64 %v) nounwind uwtable ssp {
|
||||
define void @t15(i64 %v) nounwind {
|
||||
; ELF64: t15
|
||||
%1 = add nsw i64 %v, 1
|
||||
store i64 %1, i64* getelementptr inbounds (%struct.t, %struct.t* @h, i32 0, i32 1), align 1
|
||||
@ -179,7 +179,7 @@ define void @t15(i64 %v) nounwind uwtable ssp {
|
||||
}
|
||||
|
||||
;; ld requires an offset that fits in 16 bits, so we need ldx here.
|
||||
define i64 @t16() nounwind uwtable ssp {
|
||||
define i64 @t16() nounwind {
|
||||
; ELF64: t16
|
||||
%1 = load i64, i64* getelementptr inbounds ([8192 x i64], [8192 x i64]* @i, i32 0, i64 5000), align 8
|
||||
; ELF64: lis
|
||||
@ -191,7 +191,7 @@ define i64 @t16() nounwind uwtable ssp {
|
||||
}
|
||||
|
||||
;; std requires an offset that fits in 16 bits, so we need stdx here.
|
||||
define void @t17(i64 %v) nounwind uwtable ssp {
|
||||
define void @t17(i64 %v) nounwind {
|
||||
; ELF64: t17
|
||||
%1 = add nsw i64 %v, 1
|
||||
store i64 %1, i64* getelementptr inbounds ([8192 x i64], [8192 x i64]* @i, i32 0, i64 5000), align 8
|
||||
|
@ -3,7 +3,7 @@
|
||||
; doesn't crash. (It crashed formerly on ARM, and proved useful in
|
||||
; discovering a bug on PowerPC as well.)
|
||||
|
||||
define i32 @f(i32* %x) nounwind ssp {
|
||||
define i32 @f(i32* %x) nounwind {
|
||||
%y = getelementptr inbounds i32, i32* %x, i32 5000
|
||||
%tmp103 = load i32, i32* %y, align 4
|
||||
ret i32 %tmp103
|
||||
|
@ -4,7 +4,7 @@
|
||||
;
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 -mattr=-vsx | FileCheck %s --check-prefix=ELF64
|
||||
|
||||
define zeroext i1 @rettrue() nounwind uwtable ssp {
|
||||
define zeroext i1 @rettrue() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: rettrue
|
||||
; ELF64: li 3, 1
|
||||
@ -12,7 +12,7 @@ entry:
|
||||
ret i1 true
|
||||
}
|
||||
|
||||
define zeroext i1 @retfalse() nounwind uwtable ssp {
|
||||
define zeroext i1 @retfalse() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: retfalse
|
||||
; ELF64: li 3, 0
|
||||
@ -20,7 +20,7 @@ entry:
|
||||
ret i1 false
|
||||
}
|
||||
|
||||
define signext i1 @retstrue() nounwind uwtable ssp {
|
||||
define signext i1 @retstrue() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: retstrue
|
||||
; ELF64: li 3, -1
|
||||
@ -28,7 +28,7 @@ entry:
|
||||
ret i1 true
|
||||
}
|
||||
|
||||
define signext i1 @retsfalse() nounwind uwtable ssp {
|
||||
define signext i1 @retsfalse() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: retsfalse
|
||||
; ELF64: li 3, 0
|
||||
@ -36,7 +36,7 @@ entry:
|
||||
ret i1 false
|
||||
}
|
||||
|
||||
define signext i8 @ret2(i8 signext %a) nounwind uwtable ssp {
|
||||
define signext i8 @ret2(i8 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret2
|
||||
; ELF64: extsb
|
||||
@ -44,7 +44,7 @@ entry:
|
||||
ret i8 %a
|
||||
}
|
||||
|
||||
define zeroext i8 @ret3(i8 signext %a) nounwind uwtable ssp {
|
||||
define zeroext i8 @ret3(i8 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret3
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 56
|
||||
@ -52,7 +52,7 @@ entry:
|
||||
ret i8 %a
|
||||
}
|
||||
|
||||
define signext i16 @ret4(i16 signext %a) nounwind uwtable ssp {
|
||||
define signext i16 @ret4(i16 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret4
|
||||
; ELF64: extsh
|
||||
@ -60,7 +60,7 @@ entry:
|
||||
ret i16 %a
|
||||
}
|
||||
|
||||
define zeroext i16 @ret5(i16 signext %a) nounwind uwtable ssp {
|
||||
define zeroext i16 @ret5(i16 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret5
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 48
|
||||
@ -68,7 +68,7 @@ entry:
|
||||
ret i16 %a
|
||||
}
|
||||
|
||||
define i16 @ret6(i16 %a) nounwind uwtable ssp {
|
||||
define i16 @ret6(i16 %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret6
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 48
|
||||
@ -76,7 +76,7 @@ entry:
|
||||
ret i16 %a
|
||||
}
|
||||
|
||||
define signext i32 @ret7(i32 signext %a) nounwind uwtable ssp {
|
||||
define signext i32 @ret7(i32 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret7
|
||||
; ELF64: extsw
|
||||
@ -84,7 +84,7 @@ entry:
|
||||
ret i32 %a
|
||||
}
|
||||
|
||||
define zeroext i32 @ret8(i32 signext %a) nounwind uwtable ssp {
|
||||
define zeroext i32 @ret8(i32 signext %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret8
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 32
|
||||
@ -92,7 +92,7 @@ entry:
|
||||
ret i32 %a
|
||||
}
|
||||
|
||||
define i32 @ret9(i32 %a) nounwind uwtable ssp {
|
||||
define i32 @ret9(i32 %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret9
|
||||
; ELF64: rldicl {{[0-9]+}}, {{[0-9]+}}, 0, 32
|
||||
@ -100,7 +100,7 @@ entry:
|
||||
ret i32 %a
|
||||
}
|
||||
|
||||
define i64 @ret10(i64 %a) nounwind uwtable ssp {
|
||||
define i64 @ret10(i64 %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret10
|
||||
; ELF64-NOT: exts
|
||||
@ -109,21 +109,21 @@ entry:
|
||||
ret i64 %a
|
||||
}
|
||||
|
||||
define float @ret11(float %a) nounwind uwtable ssp {
|
||||
define float @ret11(float %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret11
|
||||
; ELF64: blr
|
||||
ret float %a
|
||||
}
|
||||
|
||||
define double @ret12(double %a) nounwind uwtable ssp {
|
||||
define double @ret12(double %a) nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret12
|
||||
; ELF64: blr
|
||||
ret double %a
|
||||
}
|
||||
|
||||
define i8 @ret13() nounwind uwtable ssp {
|
||||
define i8 @ret13() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret13
|
||||
; ELF64: li
|
||||
@ -131,7 +131,7 @@ entry:
|
||||
ret i8 15;
|
||||
}
|
||||
|
||||
define i16 @ret14() nounwind uwtable ssp {
|
||||
define i16 @ret14() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret14
|
||||
; ELF64: li
|
||||
@ -139,7 +139,7 @@ entry:
|
||||
ret i16 -225;
|
||||
}
|
||||
|
||||
define i32 @ret15() nounwind uwtable ssp {
|
||||
define i32 @ret15() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret15
|
||||
; ELF64: lis
|
||||
@ -148,7 +148,7 @@ entry:
|
||||
ret i32 278135;
|
||||
}
|
||||
|
||||
define i64 @ret16() nounwind uwtable ssp {
|
||||
define i64 @ret16() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret16
|
||||
; ELF64: li
|
||||
@ -159,7 +159,7 @@ entry:
|
||||
ret i64 27813515225;
|
||||
}
|
||||
|
||||
define float @ret17() nounwind uwtable ssp {
|
||||
define float @ret17() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret17
|
||||
; ELF64: addis
|
||||
@ -168,7 +168,7 @@ entry:
|
||||
ret float 2.5;
|
||||
}
|
||||
|
||||
define double @ret18() nounwind uwtable ssp {
|
||||
define double @ret18() nounwind {
|
||||
entry:
|
||||
; ELF64-LABEL: ret18
|
||||
; ELF64: addis
|
||||
|
@ -1,6 +1,6 @@
|
||||
; RUN: llc < %s -O0 -verify-machineinstrs -fast-isel-abort=1 -mtriple=powerpc64-unknown-linux-gnu -mcpu=pwr7 | FileCheck %s --check-prefix=ELF64
|
||||
|
||||
define i32 @shl() nounwind ssp {
|
||||
define i32 @shl() nounwind {
|
||||
entry:
|
||||
; ELF64: shl
|
||||
; ELF64: slw
|
||||
@ -8,7 +8,7 @@ entry:
|
||||
ret i32 %shl
|
||||
}
|
||||
|
||||
define i32 @shl_reg(i32 %src1, i32 %src2) nounwind ssp {
|
||||
define i32 @shl_reg(i32 %src1, i32 %src2) nounwind {
|
||||
entry:
|
||||
; ELF64: shl_reg
|
||||
; ELF64: slw
|
||||
@ -16,7 +16,7 @@ entry:
|
||||
ret i32 %shl
|
||||
}
|
||||
|
||||
define i32 @lshr() nounwind ssp {
|
||||
define i32 @lshr() nounwind {
|
||||
entry:
|
||||
; ELF64: lshr
|
||||
; ELF64: srw
|
||||
@ -24,7 +24,7 @@ entry:
|
||||
ret i32 %lshr
|
||||
}
|
||||
|
||||
define i32 @lshr_reg(i32 %src1, i32 %src2) nounwind ssp {
|
||||
define i32 @lshr_reg(i32 %src1, i32 %src2) nounwind {
|
||||
entry:
|
||||
; ELF64: lshr_reg
|
||||
; ELF64: srw
|
||||
@ -32,7 +32,7 @@ entry:
|
||||
ret i32 %lshr
|
||||
}
|
||||
|
||||
define i32 @ashr() nounwind ssp {
|
||||
define i32 @ashr() nounwind {
|
||||
entry:
|
||||
; ELF64: ashr
|
||||
; ELF64: srawi
|
||||
@ -40,7 +40,7 @@ entry:
|
||||
ret i32 %ashr
|
||||
}
|
||||
|
||||
define i32 @ashr_reg(i32 %src1, i32 %src2) nounwind ssp {
|
||||
define i32 @ashr_reg(i32 %src1, i32 %src2) nounwind {
|
||||
entry:
|
||||
; ELF64: ashr_reg
|
||||
; ELF64: sraw
|
||||
|
@ -2,7 +2,7 @@
|
||||
; sext(a) + sext(b) != sext(a + b)
|
||||
; RUN: llc -mtriple=powerpc64-unknown-freebsd10.0 %s -O0 -o - | FileCheck %s
|
||||
|
||||
define zeroext i8 @gep_promotion(i8* %ptr) nounwind uwtable ssp {
|
||||
define zeroext i8 @gep_promotion(i8* %ptr) nounwind {
|
||||
entry:
|
||||
%ptr.addr = alloca i8*, align 8
|
||||
%add = add i8 64, 64 ; 0x40 + 0x40
|
||||
|
Loading…
Reference in New Issue
Block a user