Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			525 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			525 B
			
		
	
	
	
		
			C
		
	
	
	
	
	
/*
 | 
						|
 * Copyright (C) 1996 Paul Mackerras.
 | 
						|
 *
 | 
						|
 * NB this file must be compiled with -O2.
 | 
						|
 */
 | 
						|
 | 
						|
int
 | 
						|
xmon_setjmp(long *buf)
 | 
						|
{
 | 
						|
    asm ("mflr 0; stw 0,0(%0);"
 | 
						|
	 "stw 1,4(%0); stw 2,8(%0);"
 | 
						|
	 "mfcr 0; stw 0,12(%0);"
 | 
						|
	 "stmw 13,16(%0)"
 | 
						|
	 : : "r" (buf));
 | 
						|
    /* XXX should save fp regs as well */
 | 
						|
    return 0;
 | 
						|
}
 | 
						|
 | 
						|
void
 | 
						|
xmon_longjmp(long *buf, int val)
 | 
						|
{
 | 
						|
    if (val == 0)
 | 
						|
	val = 1;
 | 
						|
    asm ("lmw 13,16(%0);"
 | 
						|
	 "lwz 0,12(%0); mtcrf 0x38,0;"
 | 
						|
	 "lwz 0,0(%0); lwz 1,4(%0); lwz 2,8(%0);"
 | 
						|
	 "mtlr 0; mr 3,%1"
 | 
						|
	 : : "r" (buf), "r" (val));
 | 
						|
}
 |