mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-05 14:34:55 +00:00
Run llvm-upgrade on this test and/or upgrade intrinsic function calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32133 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
595a4e51d5
commit
d05b67dc64
@ -1,6 +1,6 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade < %s | llvm-as -o - | llc
|
||||
|
||||
; This causes the backend to assert out with:
|
||||
; This caused the backend to assert out with:
|
||||
; SparcInstrInfo.cpp:103: failed assertion `0 && "Unexpected unsigned type"'
|
||||
;
|
||||
implementation
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;; Date: May 28, 2003.
|
||||
;; From: test/Programs/External/SPEC/CINT2000/254.gap.llvm.bc
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;; Date: May 28, 2003.
|
||||
;; From: test/Programs/SingleSource/richards_benchmark.c
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
|
||||
%.str_1 = internal constant [42 x sbyte] c" ui = %u (0x%x)\09\09UL-ui = %lld (0x%llx)\0A\00"
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;; Date: Jul 8, 2003.
|
||||
;; From: test/Programs/MultiSource/Olden-perimeter
|
||||
|
@ -2,10 +2,10 @@
|
||||
; Test that llvm.memcpy works with a i64 length operand on all targets.
|
||||
|
||||
|
||||
declare void %llvm.memcpy(sbyte*, sbyte*, ulong, uint)
|
||||
declare void %llvm.memcpy.i64(sbyte*, sbyte*, ulong, uint)
|
||||
|
||||
void %l12_l94_bc_divide_endif_2E_3_2E_ce() {
|
||||
newFuncRoot:
|
||||
tail call void %llvm.memcpy( sbyte* null, sbyte* null, ulong 0, uint 1 )
|
||||
tail call void %llvm.memcpy.i64( sbyte* null, sbyte* null, ulong 0, uint 1 )
|
||||
unreachable
|
||||
}
|
||||
|
@ -1,10 +1,10 @@
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=none &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=default &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=simple &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=simple-noitin &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=list-td &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=list-tdrr &&
|
||||
; RUN: llvm-as -f %s -o - | llc -sched=list-burr
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=none &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=default &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=simple &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=simple-noitin &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=list-td &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=list-tdrr &&
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc -sched=list-burr
|
||||
; PR859
|
||||
|
||||
implementation
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;; Register allocation is doing a very poor job on this routine from yyparse
|
||||
;; in Burg:
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;; GetMemInstArgs() folded the two getElementPtr instructions together,
|
||||
;; producing an illegal getElementPtr. That's because the type generated
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
; Test that a sequence of constant indices are folded correctly
|
||||
; into the equivalent offset at compile-time.
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
;;
|
||||
;; Test the sequence:
|
||||
|
@ -1,12 +1,12 @@
|
||||
; RUN: llvm-upgrade < %s | llvm-as | llc
|
||||
|
||||
;; SQRT
|
||||
declare float %llvm.sqrt(float)
|
||||
declare double %llvm.sqrt(double)
|
||||
declare float %llvm.sqrt.f32(float)
|
||||
declare double %llvm.sqrt.f64(double)
|
||||
double %test_sqrt(float %F) {
|
||||
%G = call float %llvm.sqrt(float %F)
|
||||
%G = call float %llvm.sqrt.f32(float %F)
|
||||
%H = cast float %G to double
|
||||
%I = call double %llvm.sqrt(double %H)
|
||||
%I = call double %llvm.sqrt.f64(double %H)
|
||||
ret double %I
|
||||
}
|
||||
|
||||
|
@ -2,9 +2,9 @@
|
||||
; XFAIL: ia64|sparcv8
|
||||
|
||||
|
||||
declare bool %llvm.isunordered(double, double)
|
||||
declare bool %llvm.isunordered.f64(double, double)
|
||||
|
||||
bool %test(double %X, double %Y) {
|
||||
%tmp27 = call bool %llvm.isunordered( double %X, double %Y)
|
||||
%tmp27 = call bool %llvm.isunordered.f64( double %X, double %Y)
|
||||
ret bool %tmp27
|
||||
}
|
||||
|
@ -1,59 +1,59 @@
|
||||
; Make sure this testcase is supported by all code generators
|
||||
; RUN: llvm-upgrade < %s | llvm-as | llc
|
||||
|
||||
declare long %llvm.ctpop(long)
|
||||
declare int %llvm.ctpop(int)
|
||||
declare short %llvm.ctpop(short)
|
||||
declare sbyte %llvm.ctpop(sbyte)
|
||||
declare ulong %llvm.ctpop.i64(ulong)
|
||||
declare uint %llvm.ctpop.i32(uint)
|
||||
declare ushort %llvm.ctpop.i16(ushort)
|
||||
declare ubyte %llvm.ctpop.i8(ubyte)
|
||||
|
||||
void %ctpoptest(sbyte %A, short %B, int %C, long %D,
|
||||
sbyte *%AP, short* %BP, int* %CP, long* %DP) {
|
||||
%a = call sbyte %llvm.ctpop(sbyte %A)
|
||||
%b = call short %llvm.ctpop(short %B)
|
||||
%c = call int %llvm.ctpop(int %C)
|
||||
%d = call long %llvm.ctpop(long %D)
|
||||
void %ctpoptest(ubyte %A, ushort %B, uint %C, ulong %D,
|
||||
ubyte *%AP, ushort* %BP, uint* %CP, ulong* %DP) {
|
||||
%a = call ubyte %llvm.ctpop.i8(ubyte %A)
|
||||
%b = call ushort %llvm.ctpop.i16(ushort %B)
|
||||
%c = call uint %llvm.ctpop.i32(uint %C)
|
||||
%d = call ulong %llvm.ctpop.i64(ulong %D)
|
||||
|
||||
store sbyte %a, sbyte* %AP
|
||||
store short %b, short* %BP
|
||||
store int %c, int* %CP
|
||||
store long %d, long* %DP
|
||||
store ubyte %a, ubyte* %AP
|
||||
store ushort %b, ushort* %BP
|
||||
store uint %c, uint* %CP
|
||||
store ulong %d, ulong* %DP
|
||||
ret void
|
||||
}
|
||||
|
||||
declare long %llvm.ctlz(long)
|
||||
declare int %llvm.ctlz(int)
|
||||
declare short %llvm.ctlz(short)
|
||||
declare sbyte %llvm.ctlz(sbyte)
|
||||
declare ulong %llvm.ctlz.i64(ulong)
|
||||
declare uint %llvm.ctlz.i32(uint)
|
||||
declare ushort %llvm.ctlz.i16(ushort)
|
||||
declare ubyte %llvm.ctlz.i8(ubyte)
|
||||
|
||||
void %ctlztest(sbyte %A, short %B, int %C, long %D,
|
||||
sbyte *%AP, short* %BP, int* %CP, long* %DP) {
|
||||
%a = call sbyte %llvm.ctlz(sbyte %A)
|
||||
%b = call short %llvm.ctlz(short %B)
|
||||
%c = call int %llvm.ctlz(int %C)
|
||||
%d = call long %llvm.ctlz(long %D)
|
||||
void %ctlztest(ubyte %A, ushort %B, uint %C, ulong %D,
|
||||
ubyte *%AP, ushort* %BP, uint* %CP, ulong* %DP) {
|
||||
%a = call ubyte %llvm.ctlz.i8(ubyte %A)
|
||||
%b = call ushort %llvm.ctlz.i16(ushort %B)
|
||||
%c = call uint %llvm.ctlz.i32(uint %C)
|
||||
%d = call ulong %llvm.ctlz.i64(ulong %D)
|
||||
|
||||
store sbyte %a, sbyte* %AP
|
||||
store short %b, short* %BP
|
||||
store int %c, int* %CP
|
||||
store long %d, long* %DP
|
||||
store ubyte %a, ubyte* %AP
|
||||
store ushort %b, ushort* %BP
|
||||
store uint %c, uint* %CP
|
||||
store ulong %d, ulong* %DP
|
||||
ret void
|
||||
}
|
||||
|
||||
declare long %llvm.cttz(long)
|
||||
declare int %llvm.cttz(int)
|
||||
declare short %llvm.cttz(short)
|
||||
declare sbyte %llvm.cttz(sbyte)
|
||||
declare ulong %llvm.cttz.i64(ulong)
|
||||
declare uint %llvm.cttz.i32(uint)
|
||||
declare ushort %llvm.cttz.i16(ushort)
|
||||
declare ubyte %llvm.cttz.i8(ubyte)
|
||||
|
||||
void %cttztest(sbyte %A, short %B, int %C, long %D,
|
||||
sbyte *%AP, short* %BP, int* %CP, long* %DP) {
|
||||
%a = call sbyte %llvm.cttz(sbyte %A)
|
||||
%b = call short %llvm.cttz(short %B)
|
||||
%c = call int %llvm.cttz(int %C)
|
||||
%d = call long %llvm.cttz(long %D)
|
||||
void %cttztest(ubyte %A, ushort %B, uint %C, ulong %D,
|
||||
ubyte *%AP, ushort* %BP, uint* %CP, ulong* %DP) {
|
||||
%a = call ubyte %llvm.cttz.i8(ubyte %A)
|
||||
%b = call ushort %llvm.cttz.i16(ushort %B)
|
||||
%c = call uint %llvm.cttz.i32(uint %C)
|
||||
%d = call ulong %llvm.cttz.i64(ulong %D)
|
||||
|
||||
store sbyte %a, sbyte* %AP
|
||||
store short %b, short* %BP
|
||||
store int %c, int* %CP
|
||||
store long %d, long* %DP
|
||||
store ubyte %a, ubyte* %AP
|
||||
store ushort %b, ushort* %BP
|
||||
store uint %c, uint* %CP
|
||||
store ulong %d, ulong* %DP
|
||||
ret void
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
; Test that a negative constant smaller than 64 bits (e.g., int)
|
||||
; is correctly implemented with sign-extension.
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
implementation
|
||||
declare int "printf"(sbyte*, int, float)
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
%AConst = constant int 123
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
; RUN: llvm-as -f %s -o - | llc
|
||||
; RUN: llvm-upgrade %s | llvm-as | llc
|
||||
|
||||
; July 6, 2002 -- LLC Regression test
|
||||
; This test case checks if the integer CC register %xcc (or %ccr)
|
||||
|
Loading…
x
Reference in New Issue
Block a user