Search
lxdream.org :: lxdream/test/sh4/and.s
lxdream 0.9.1
released Jun 29
Download Now
filename test/sh4/and.s
changeset 231:a9e61a96a885
prev226:0eeeb25447d3
author nkeynes
date Sun Jul 20 11:37:47 2008 +0000 (15 years ago)
permissions -rw-r--r--
last change Commit testta changes for sort-dma tests
file annotate diff log raw
nkeynes@226
     1
.section .text
nkeynes@226
     2
.include "sh4/inc.s"
nkeynes@226
     3
!
nkeynes@226
     4
! Test AND Rm,Rn operation
nkeynes@226
     5
!
nkeynes@226
     6
.global _test_and
nkeynes@226
     7
_test_and:
nkeynes@226
     8
	start_test
nkeynes@226
     9
	mov.l r11, @-r15
nkeynes@226
    10
	mov.l test_and_data_k, r11
nkeynes@226
    11
nkeynes@226
    12
test_and_loop:
nkeynes@226
    13
	mov.l test_and_data_end_k, r4
nkeynes@226
    14
	cmp/eq r11, r4
nkeynes@226
    15
	bt test_and_end
nkeynes@226
    16
	add #1, r12
nkeynes@226
    17
nkeynes@226
    18
	clc
nkeynes@226
    19
	mov.l @r11+, r0
nkeynes@226
    20
	mov.l @r11+, r1
nkeynes@226
    21
	and r0, r1
nkeynes@226
    22
	stc sr, r4
nkeynes@226
    23
	mov.l @r11+, r2
nkeynes@226
    24
	mov.l @r11+, r3
nkeynes@226
    25
	cmp/eq r1, r2
nkeynes@226
    26
	bt test_and_b
nkeynes@226
    27
	fail test_and_str_k
nkeynes@226
    28
	bra test_and_loop
nkeynes@226
    29
	nop
nkeynes@226
    30
test_and_b:
nkeynes@226
    31
	ldc r4, sr
nkeynes@226
    32
	xor r0, r0
nkeynes@226
    33
	add #1, r0
nkeynes@226
    34
	and r0, r4
nkeynes@226
    35
	cmp/eq r3, r4
nkeynes@226
    36
	bt test_and_loop
nkeynes@226
    37
	fail test_and_str_k
nkeynes@226
    38
	bra test_and_loop
nkeynes@226
    39
	nop
nkeynes@226
    40
nkeynes@226
    41
test_and_end:
nkeynes@231
    42
	mov.l @r15+, r11
nkeynes@226
    43
	end_test test_and_str_k
nkeynes@226
    44
nkeynes@226
    45
	.align 4	
nkeynes@226
    46
test_and_data_k:
nkeynes@226
    47
	.long test_and_data
nkeynes@226
    48
test_and_data:
nkeynes@226
    49
test_and_data_1:
nkeynes@226
    50
	.long 0xFFFFFFFF
nkeynes@226
    51
	.long 0x00000000
nkeynes@226
    52
	.long 0x00000000
nkeynes@226
    53
	.long 0x00000000
nkeynes@226
    54
nkeynes@226
    55
	.long 0x55555555
nkeynes@226
    56
	.long 0xAAAAAAAA
nkeynes@226
    57
	.long 0x00000000
nkeynes@226
    58
	.long 0x00000000
nkeynes@226
    59
nkeynes@226
    60
	.long 0xFFFFFFFF
nkeynes@226
    61
	.long 0xA5A5A5A5
nkeynes@226
    62
	.long 0xA5A5A5A5
nkeynes@226
    63
	.long 0x00000000
nkeynes@226
    64
nkeynes@226
    65
	.long 0xFFFFFFFF
nkeynes@226
    66
	.long 0xFFFFFFFF
nkeynes@226
    67
	.long 0xFFFFFFFF
nkeynes@226
    68
	.long 0x00000000
nkeynes@226
    69
nkeynes@226
    70
	.long 0x12345678
nkeynes@226
    71
	.long 0x98765432
nkeynes@226
    72
	.long 0x10345430
nkeynes@226
    73
	.long 0x00000000
nkeynes@226
    74
nkeynes@226
    75
	.long 0x00FFFFFF
nkeynes@226
    76
	.long 0x98765432
nkeynes@226
    77
	.long 0x00765432
nkeynes@226
    78
	.long 0x00000000
nkeynes@226
    79
	
nkeynes@226
    80
test_and_data_end:	
nkeynes@226
    81
	.align 4
nkeynes@226
    82
test_and_data_end_k:
nkeynes@226
    83
	.long test_and_data_end	
nkeynes@226
    84
test_and_str_k:
nkeynes@226
    85
	.long test_and_str
nkeynes@226
    86
test_and_str:
nkeynes@226
    87
	.string "AND"
nkeynes@226
    88
	
.