tools/testing/selftests/powerpc/switch_endian/check.S

Source file repositories/reference/linux-study-clean/tools/testing/selftests/powerpc/switch_endian/check.S

File Facts

System
Linux kernel
Corpus path
tools/testing/selftests/powerpc/switch_endian/check.S
Extension
.S
Size
1977 bytes
Lines
102
Domain
Support Tooling And Documentation
Bucket
tools
Inferred role
Support Tooling And Documentation: tools
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

#include "common.h"

/*
 * Checks that registers contain what we expect, ie. they were not clobbered by
 * the syscall.
 *
 * r15: pattern to check registers against.
 *
 * At the end r3 == 0 if everything's OK.
 */
	nop			# guaranteed to be illegal in reverse-endian
	mr	r9,r15
	cmpd    r9,r3		# check r3
	bne     1f
	addi    r9,r15,4	# check r4
	cmpd    r9,r4
	bne     1f
	lis     r9,0x00FF	# check CR
	ori     r9,r9,0xF000
	mfcr    r10
	and     r10,r10,r9
	cmpw    r9,r10
	addi    r9,r15,34
	bne     1f
	addi    r9,r15,32	# check LR
	mflr    r10
	cmpd    r9,r10
	bne     1f
	addi    r9,r15,5	# check r5
	cmpd    r9,r5
	bne     1f
	addi    r9,r15,6	# check r6
	cmpd    r9,r6
	bne     1f
	addi    r9,r15,7	# check r7
	cmpd    r9,r7
	bne     1f
	addi    r9,r15,8	# check r8
	cmpd    r9,r8
	bne     1f
	addi    r9,r15,13	# check r13
	cmpd    r9,r13
	bne     1f
	addi    r9,r15,14	# check r14
	cmpd    r9,r14
	bne     1f
	addi    r9,r15,16	# check r16
	cmpd    r9,r16
	bne     1f
	addi    r9,r15,17	# check r17
	cmpd    r9,r17
	bne     1f
	addi    r9,r15,18	# check r18
	cmpd    r9,r18
	bne     1f
	addi    r9,r15,19	# check r19
	cmpd    r9,r19
	bne     1f
	addi    r9,r15,20	# check r20
	cmpd    r9,r20
	bne     1f
	addi    r9,r15,21	# check r21
	cmpd    r9,r21
	bne     1f
	addi    r9,r15,22	# check r22
	cmpd    r9,r22
	bne     1f
	addi    r9,r15,23	# check r23
	cmpd    r9,r23
	bne     1f

Annotation

Implementation Notes