22 lines
		
	
	
	
		
			238 B
			
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
		
		
			
		
	
	
			22 lines
		
	
	
	
		
			238 B
			
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
| 
								 | 
							
								;;; abs.S
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <asm/linkage.h>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#if defined(__H8300H__) 
							 | 
						||
| 
								 | 
							
									.h8300h
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
								#if defined(__H8300S__) 
							 | 
						||
| 
								 | 
							
									.h8300s
							 | 
						||
| 
								 | 
							
								#endif
							 | 
						||
| 
								 | 
							
									.text
							 | 
						||
| 
								 | 
							
								.global SYMBOL_NAME(abs)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								;;; int abs(int n)
							 | 
						||
| 
								 | 
							
								SYMBOL_NAME_LABEL(abs)
							 | 
						||
| 
								 | 
							
									mov.l	er0,er0
							 | 
						||
| 
								 | 
							
									bpl	1f
							 | 
						||
| 
								 | 
							
									neg.l	er0
							 | 
						||
| 
								 | 
							
								1:
							 | 
						||
| 
								 | 
							
									rts
							 | 
						||
| 
								 | 
							
									
							 |