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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
#include "ghcconfig.h"
#include "rts/Constants.h"
#ifdef powerpc64le_HOST_ARCH
#ifdef linux_HOST_OS
#define STACK_FRAME_SIZE RESERVED_C_STACK_BYTES+304
.file "StgCRun.c"
.abiversion 2
.section ".toc","aw"
.section ".text"
.align 2
.globl StgRun
.hidden StgRun
.type StgRun,@function
StgRun:
.localentry StgRun,.-StgRun
mflr 0
mr 5, 1
std 0, 16(1)
stdu 1, -(STACK_FRAME_SIZE)(1)
std 2, -296(5)
std 14, -288(5)
std 15, -280(5)
std 16, -272(5)
std 17, -264(5)
std 18, -256(5)
std 19, -248(5)
std 20, -240(5)
std 21, -232(5)
std 22, -224(5)
std 23, -216(5)
std 24, -208(5)
std 25, -200(5)
std 26, -192(5)
std 27, -184(5)
std 28, -176(5)
std 29, -168(5)
std 30, -160(5)
std 31, -152(5)
stfd 14, -144(5)
stfd 15, -136(5)
stfd 16, -128(5)
stfd 17, -120(5)
stfd 18, -112(5)
stfd 19, -104(5)
stfd 20, -96(5)
stfd 21, -88(5)
stfd 22, -80(5)
stfd 23, -72(5)
stfd 24, -64(5)
stfd 25, -56(5)
stfd 26, -48(5)
stfd 27, -40(5)
stfd 28, -32(5)
stfd 29, -24(5)
stfd 30, -16(5)
stfd 31, -8(5)
mr 27, 4
mtctr 3
mr 12, 3
bctr
.globl StgReturn
.type StgReturn,@function
StgReturn:
.localentry StgReturn,.-StgReturn
mr 3,14
la 5, STACK_FRAME_SIZE(1)
ld 2, -296(5)
ld 14, -288(5)
ld 15, -280(5)
ld 16, -272(5)
ld 17, -264(5)
ld 18, -256(5)
ld 19, -248(5)
ld 20, -240(5)
ld 21, -232(5)
ld 22, -224(5)
ld 23, -216(5)
ld 24, -208(5)
ld 25, -200(5)
ld 26, -192(5)
ld 27, -184(5)
ld 28, -176(5)
ld 29, -168(5)
ld 30, -160(5)
ld 31, -152(5)
lfd 14, -144(5)
lfd 15, -136(5)
lfd 16, -128(5)
lfd 17, -120(5)
lfd 18, -112(5)
lfd 19, -104(5)
lfd 20, -96(5)
lfd 21, -88(5)
lfd 22, -80(5)
lfd 23, -72(5)
lfd 24, -64(5)
lfd 25, -56(5)
lfd 26, -48(5)
lfd 27, -40(5)
lfd 28, -32(5)
lfd 29, -24(5)
lfd 30, -16(5)
lfd 31, -8(5)
mr 1, 5
ld 0, 16(1)
mtlr 0
blr
.section .note.GNU-stack,"",@progbits
#else // linux_HOST_OS
#error Only Linux support for power64 little endian right now.
#endif
#endif
|