Various fixes and improvements to printpcs
Search for an addr2line that supports elf32-i386. Don't print the path of addr2line as a side-effect of which. Don't uselessly pipe "grep '^ '" to addr2line's stdin. Enable as many pretty-printing and otherwise helpful options as possible (this makes the output *much* more pleasant on modern addr2lines).
This commit is contained in:
		
							parent
							
								
									020acb4f10
								
							
						
					
					
						commit
						951b77f7ec
					
				
					 1 changed files with 11 additions and 8 deletions
				
			
		
							
								
								
									
										19
									
								
								printpcs
									
										
									
									
									
								
							
							
						
						
									
										19
									
								
								printpcs
									
										
									
									
									
								
							|  | @ -1,11 +1,14 @@ | |||
| #!/bin/sh | ||||
| 
 | ||||
| # Decode the symbols from a panic stack trace on stdin | ||||
| # Decode the symbols from a panic EIP list | ||||
| 
 | ||||
| if which addr2line | ||||
| then | ||||
|     p="addr2line" | ||||
| else | ||||
|     p="i386-jos-elf-addr2line" | ||||
| fi | ||||
| echo grep '^ ' | $p -e kernel $* | ||||
| # Find a working addr2line | ||||
| for p in i386-jos-elf-addr2line addr2line; do | ||||
|     if which $p 2>&1 >/dev/null && \ | ||||
|        $p -h 2>&1 | grep -q '\belf32-i386\b'; then | ||||
|         break | ||||
|     fi | ||||
| done | ||||
| 
 | ||||
| # Enable as much pretty-printing as this addr2line can do | ||||
| $p $($p -h | grep ' -[aipsf] ' | awk '{print $1}') -e kernel "$@" | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Austin Clements
						Austin Clements