mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
Eliminate usage of function level constant pool
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2450 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -4,9 +4,9 @@ implementation
|
||||
; format looks anyways (except for negative vs positive offsets)...
|
||||
;
|
||||
void "void"(int, int) ; Def %0, %1
|
||||
const int 0 ; Def 2
|
||||
const int -4 ; Def 3
|
||||
begin
|
||||
add int 0, 0 ; Def 2
|
||||
sub int 0, 4 ; Def 3
|
||||
br label %1
|
||||
|
||||
add int %0, %1 ; Def 4
|
||||
@@ -22,10 +22,8 @@ end
|
||||
|
||||
; This function always returns zero
|
||||
int "zarro"()
|
||||
const uint 4000000000 ; Def 0 - uint plane
|
||||
const int 0 ; Def 0 - int plane
|
||||
begin
|
||||
Startup:
|
||||
ret int %0
|
||||
ret int 0
|
||||
end
|
||||
|
||||
|
@@ -3,20 +3,19 @@
|
||||
type int(%myfn)
|
||||
type int(int)
|
||||
type int(int(int))
|
||||
|
||||
%thisfuncty = type int (int) *
|
||||
implementation
|
||||
|
||||
; This function always returns zero
|
||||
int "zarro"(int %Func)
|
||||
%q = const uint 4000000000
|
||||
%p = const int 0
|
||||
begin
|
||||
Startup:
|
||||
add int %p, 10
|
||||
ret int %p
|
||||
add int 0, 10
|
||||
ret int 0
|
||||
end
|
||||
|
||||
int "test"(int)
|
||||
%thisfuncty = type int (int) *
|
||||
begin
|
||||
add %thisfuncty %zarro, %test
|
||||
add %thisfuncty %test, %foozball
|
||||
|
Reference in New Issue
Block a user