summaryrefslogtreecommitdiff
path: root/mips_ultrix_mach_dep.s
blob: 178224e31c8d6b6ad96d42a01e5373380222c5ec (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# define call_push(x)     move    $4,x;    jal     GC_push_one

    .text
 # Mark from machine registers that are saved by C compiler
    .globl  GC_push_regs
    .ent    GC_push_regs
GC_push_regs:
    subu    $sp,8       ## Need to save only return address
    sw      $31,4($sp)
    .mask   0x80000000,-4
    .frame  $sp,8,$31
    call_push($2)
    call_push($3)
    call_push($16)
    call_push($17)
    call_push($18)
    call_push($19)
    call_push($20)
    call_push($21)
    call_push($22)
    call_push($23)
    call_push($30)
    lw      $31,4($sp)
    addu    $sp,8
    j       $31
    .end    GC_push_regs