mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-24 06:30:19 +00:00
3f7706b5d2
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@17568 91177308-0d34-0410-b5e6-96231b3b80d8
35 lines
620 B
LLVM
35 lines
620 B
LLVM
; RUN: llvm-as %s -o - | llvm-dis > %t1.ll
|
|
; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
|
|
; RUN: diff %t1.ll %t2.ll
|
|
|
|
%myty = type int
|
|
%myfn = type float (int,double,uint,short)
|
|
type int(%myfn*)
|
|
type int(int)
|
|
type int(int(int)*)
|
|
|
|
%thisfuncty = type int (int) *
|
|
implementation
|
|
|
|
declare void %F(%thisfuncty, %thisfuncty, %thisfuncty)
|
|
|
|
; This function always returns zero
|
|
int %zarro(int %Func)
|
|
begin
|
|
Startup:
|
|
add int 0, 10
|
|
ret int 0
|
|
end
|
|
|
|
int %test(int)
|
|
begin
|
|
call void %F(%thisfuncty %zarro, %thisfuncty %test, %thisfuncty %foozball)
|
|
ret int 0
|
|
end
|
|
|
|
int %foozball(int)
|
|
begin
|
|
ret int 0
|
|
end
|
|
|