Subversion Repositories HelenOS

Rev

Rev 4343 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 4343 Rev 4345
Line 69... Line 69...
69
.global memcpy_from_uspace_failover_address
69
.global memcpy_from_uspace_failover_address
70
.global memcpy_to_uspace_failover_address
70
.global memcpy_to_uspace_failover_address
71
memcpy:
71
memcpy:
72
memcpy_from_uspace:
72
memcpy_from_uspace:
73
memcpy_to_uspace:
73
memcpy_to_uspace:
-
 
74
	move $t2, $a0      # save dst
-
 
75
	
74
	addiu	$v0,$a1,3
76
	addiu $v0, $a1, 3
75
	li	$v1,-4			# 0xfffffffffffffffc
77
	li $v1, -4         # 0xfffffffffffffffc
76
	and	$v0,$v0,$v1
78
	and $v0, $v0, $v1
77
	beq	$a1,$v0,3f
79
	beq $a1, $v0, 3f
78
	move	$t0,$a0
80
	move $t0, $a0
79
	move	$t2,$a0			# save dst
-
 
80
 
81
	
81
0:
82
	0:
82
	beq	$a2,$zero,2f
83
		beq $a2, $zero, 2f
83
	move	$a3,$zero
84
		move $a3, $zero
84
 
85
	
Line 103... Line 104...
103
	beq	$t1,$zero,5f
104
		beq $t1, $zero, 5f
104
	move	$a3,$zero
105
		move $a3, $zero
105
 
106
		
106
	move	$a3,$zero
107
		move $a3, $zero
107
	move	$a0,$zero
108
		move $a0, $zero
-
 
109
	
108
4:
110
	4:
109
	addu	$v0,$a1,$a0
111
		addu $v0, $a1, $a0
110
	lw	$v1,0($v0)
112
		lw $v1, 0($v0)
111
	addiu	$a3,$a3,1
113
		addiu $a3, $a3, 1
112
	addu	$v0,$t0,$a0
114
		addu $v0, $t0, $a0
Line 121... Line 123...
121
 
123
		
122
	sll	$v0,$a3,2
124
		sll $v0, $a3, 2
123
	addu	$t1,$v0,$t0
125
		addu $t1, $v0, $t0
124
	move	$a3,$zero
126
		move $a3, $zero
125
	addu	$t0,$v0,$a1
127
		addu $t0, $v0, $a1
-
 
128
	
126
6:
129
	6:
127
	addu	$v0,$t0,$a3
130
		addu $v0, $t0, $a3
128
	lbu	$a0,0($v0)
131
		lbu $a0, 0($v0)
129
	addu	$v1,$t1,$a3
132
		addu $v1, $t1, $a3
130
	addiu	$a3,$a3,1
133
		addiu $a3, $a3, 1