add LCC - a better C-Compiler for WEGA
This commit is contained in:
parent
7f74709711
commit
eb0945aeac
|
|
@ -0,0 +1,42 @@
|
|||
.seg
|
||||
|
||||
fp := r13
|
||||
FP := rr12
|
||||
sp := r15
|
||||
SP := rr14
|
||||
|
||||
.psec data
|
||||
.data
|
||||
.=.+4 /* for NULL pointer */
|
||||
.comm 4, _environ;
|
||||
|
||||
.psec
|
||||
.code
|
||||
start::
|
||||
{
|
||||
addb rh0,#0 // for NULL pointer
|
||||
ld r7,@SP /* argc */
|
||||
dec sp,#8
|
||||
ld @SP,r7
|
||||
ldl rr4,SP
|
||||
inc r5,#10 /* argv */
|
||||
/* ldl SP(#2),rr4 */
|
||||
ldl |_stkseg+2|(sp),rr4
|
||||
ldl rr2,@rr4 /* addr of fst arg string */
|
||||
dec r3,#4
|
||||
xor r0,r0
|
||||
ld r1,r0
|
||||
ldl @rr2,rr0
|
||||
inc r7
|
||||
sla r7,#2 /* (argc+1)*2 */
|
||||
add r5,r7
|
||||
ldl _environ,rr4
|
||||
ldl SP(#6),rr4
|
||||
ldl FP,SP
|
||||
call _main
|
||||
push @SP,r2
|
||||
call _exit
|
||||
pop r0,@SP
|
||||
sc #1 /* exit */
|
||||
}
|
||||
.extern _exit
|
||||
Loading…
Reference in New Issue