[OSy] chyba v kalistu -- sys.S, 509, 510 ?

Dalibor Straka dast at panelnet.cz
Tue Oct 23 16:13:31 CEST 2007


On Tue, Oct 23, 2007 at 04:10:05PM +0200, Zdeněk Doležal wrote:
> Zdravim,
> 
> stravil jsem ted nejakou tu hodinu u ladeni zasobniku. Ac jsem v
> assembleru nikdy nic nedelal, troufam si tvrdit, ze chyba je primo v
> kalistu.
> 
> V souboru sys.S ve funkci switch_cpu_context se uklada status registr
> nejak takto:
>  mfc0    $t0, $status
>  sw      $t0, OFFSET_STATUS($sp)
> 
> Nasledne se loaduje ale do registru a0, ktery jsem chtel pouzit na
> predavani parametru pri vytvareni threadu:
>  lw      $a0, OFFSET_STATUS($sp)
>  mtc0    $a0, $status
> 
> To asi nebude spravne, ze? Udivuje me, ze na si toho jeste nikdo
> 

Ne, mezi nimi se prave prepina zasobnik
	or      sp, zero, a1
a sp je uplne jinde.

-- Dalibor Straka




More information about the NSWI004 mailing list