mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 08:44:41 +00:00 
			
		
		
		
	scripts: Add ppc64le support for checkstack.pl
64-bit ELF v2 ABI specification for POWER describes, on section "General Stack Frame Requirements", that the stack should use the following instructions when compiled with backchain: mflr r0 std r0, 16(r1) stdu r1, -XX(r1) Where XX is the frame size for that function, and this is the value checkstack.pl will find the stack size for each function. This patch also simplifies the entire Powerpc section, since just two type of instructions are used, 'stdu' for 64 bits and 'stwu' for 32 bits platform. Signed-off-by: Breno Leitao <leitao@debian.org> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
		
							parent
							
								
									8272f59852
								
							
						
					
					
						commit
						8449a4cb69
					
				
					 1 changed files with 4 additions and 7 deletions
				
			
		|  | @ -15,6 +15,7 @@ | |||
| #	M68k port by Geert Uytterhoeven and Andreas Schwab | ||||
| #	AArch64, PARISC ports by Kyle McMartin | ||||
| #	sparc port by Martin Habets <errandir_news@mph.eclipse.co.uk> | ||||
| #	ppc64le port by Breno Leitao <leitao@debian.org> | ||||
| # | ||||
| #	Usage: | ||||
| #	objdump -d vmlinux | scripts/checkstack.pl [arch] | ||||
|  | @ -78,13 +79,9 @@ my (@stack, $re, $dre, $x, $xs, $funcre); | |||
| 		$re = qr/.*l\.addi.*r1,r1,-(([0-9]{2}|[3-9])[0-9]{2})/o; | ||||
| 	} elsif ($arch eq 'parisc' || $arch eq 'parisc64') { | ||||
| 		$re = qr/.*ldo ($x{1,8})\(sp\),sp/o; | ||||
| 	} elsif ($arch eq 'ppc') { | ||||
| 		#c00029f4:       94 21 ff 30     stwu    r1,-208(r1) | ||||
| 		$re = qr/.*stwu.*r1,-($x{1,8})\(r1\)/o; | ||||
| 	} elsif ($arch eq 'ppc64') { | ||||
| 		#XXX | ||||
| 		$re = qr/.*stdu.*r1,-($x{1,8})\(r1\)/o; | ||||
| 	} elsif ($arch eq 'powerpc') { | ||||
| 	} elsif ($arch eq 'powerpc' || $arch =~ /^ppc(64)?(le)?$/ ) { | ||||
| 		# powerpc    : 94 21 ff 30     stwu    r1,-208(r1) | ||||
| 		# ppc64(le)  : 81 ff 21 f8     stdu    r1,-128(r1) | ||||
| 		$re = qr/.*st[dw]u.*r1,-($x{1,8})\(r1\)/o; | ||||
| 	} elsif ($arch =~ /^s390x?$/) { | ||||
| 		#   11160:       a7 fb ff 60             aghi   %r15,-160 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Breno Leitao
						Breno Leitao