Subversion Repositories HelenOS

Rev

Rev 2071 | Rev 3837 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2071 Rev 3833
Line 58... Line 58...
58
		mfsprg2 sp
58
		mfsprg2 sp
59
		subis sp, sp, 0x8000
59
		subis sp, sp, 0x8000
60
	
60
	
61
	2:
61
	2:
62
	
62
	
63
	subi sp, sp, 160
63
	subi sp, sp, 164
64
	stw r0, 8(sp)
64
	stw r0, 8(sp)
65
	stw r2, 12(sp)
65
	stw r2, 12(sp)
66
	stw r3, 16(sp)
66
	stw r3, 16(sp)
67
	stw r4, 20(sp)
67
	stw r4, 20(sp)
68
	stw r5, 24(sp)
68
	stw r5, 24(sp)
Line 107... Line 107...
107
	stw r12, 144(sp)
107
	stw r12, 144(sp)
108
	
108
	
109
	mfxer r12
109
	mfxer r12
110
	stw r12, 148(sp)
110
	stw r12, 148(sp)
111
	
111
	
112
	mfsprg1 r12
112
	mfdar r12
113
	stw r12, 152(sp)
113
	stw r12, 152(sp)
114
	
114
	
115
	mfsprg2 r12
115
	mfsprg1 r12
116
	stw r12, 156(sp)
116
	stw r12, 156(sp)
-
 
117
	
-
 
118
	mfsprg2 r12
-
 
119
	stw r12, 160(sp)
117
.endm
120
.endm
118
 
121
 
119
.org 0x100
122
.org 0x100
120
.global exc_system_reset
123
.global exc_system_reset
121
exc_system_reset:
124
exc_system_reset:
Line 135... Line 138...
135
.org 0x300
138
.org 0x300
136
.global exc_data_storage
139
.global exc_data_storage
137
exc_data_storage:
140
exc_data_storage:
138
	CONTEXT_STORE
141
	CONTEXT_STORE
139
	
142
	
140
	li r3, 2
-
 
141
	mr r4, sp
-
 
142
	addi r4, r4, 8
-
 
143
	bl pht_real_refill
-
 
144
	
-
 
145
	cmpwi r3, 0
-
 
146
	bne iret_real
-
 
147
	
-
 
148
	li r3, 2
-
 
149
	b jump_to_kernel
143
	b data_storage
150
 
144
 
151
.org 0x400
145
.org 0x400
152
.global exc_instruction_storage
146
.global exc_instruction_storage
153
exc_instruction_storage:
147
exc_instruction_storage:
154
	CONTEXT_STORE
148
	CONTEXT_STORE
155
	
149
	
156
	li r3, 3
-
 
157
	mr r4, sp
-
 
158
	addi r4, r4, 8
-
 
159
	bl pht_real_refill
-
 
160
	
-
 
161
	cmpwi r3, 0
-
 
162
	bne iret_real
-
 
163
 
-
 
164
	li r3, 3
-
 
165
	b jump_to_kernel
150
	b instruction_storage
166
 
151
 
167
.org 0x500
152
.org 0x500
168
.global exc_external
153
.global exc_external
169
exc_external:
154
exc_external:
170
	CONTEXT_STORE
155
	CONTEXT_STORE
Line 234... Line 219...
234
	
219
	
235
	li r3, 12
220
	li r3, 12
236
	b jump_to_kernel
221
	b jump_to_kernel
237
 
222
 
238
.org 0x4000
223
.org 0x4000
-
 
224
data_storage:
-
 
225
	li r3, 2
-
 
226
	mr r4, sp
-
 
227
	addi r4, r4, 8
-
 
228
	bl pht_real_refill
-
 
229
	
-
 
230
	cmpwi r3, 0
-
 
231
	bne iret_real
-
 
232
	
-
 
233
	li r3, 2
-
 
234
	b jump_to_kernel
-
 
235
 
-
 
236
instruction_storage:
-
 
237
	li r3, 3
-
 
238
	mr r4, sp
-
 
239
	addi r4, r4, 8
-
 
240
	bl pht_real_refill
-
 
241
	
-
 
242
	cmpwi r3, 0
-
 
243
	bne iret_real
-
 
244
	
-
 
245
	li r3, 3
-
 
246
	b jump_to_kernel
-
 
247
 
239
jump_to_kernel:
248
jump_to_kernel:
240
	lis r12, iret@ha
249
	lis r12, iret@ha
241
	addi r12, r12, iret@l
250
	addi r12, r12, iret@l
242
	mtlr r12
251
	mtlr r12
243
	
252
	
Line 320... Line 329...
320
	mtctr r12
329
	mtctr r12
321
	
330
	
322
	lwz r12, 148(sp)
331
	lwz r12, 148(sp)
323
	mtxer r12
332
	mtxer r12
324
	
333
	
325
	lwz r12, 152(sp)
334
	lwz r12, 156(sp)
326
	lwz sp, 156(sp)
335
	lwz sp, 160(sp)
327
	
336
	
328
	rfi
337
	rfi