1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# Blackfin testcase for parallel VIT_MAX (taken from PRM)
# mach: bfin
.include "testutils.inc"
start
loadsym P0, scratch
# Do parallel VIT_MAX's with stores to same reg; don't really
# care what the result is of VIT_MAX as long as it doesn't
# clobber the memory store.
imm32 R1, 0xFFFF0000
imm32 R2, 0x0000FFFF
imm32 R0, 0xFACE
R0 = VIT_MAX (R1, R2) (ASL) || W[P0] = R0.L;
imm32 R0, 0xFACE
R4 = W[P0];
CC = R4 == R0;
IF !CC JUMP 1f;
imm32 R5, 0xFEEDBEEF
imm32 R4, 0xDEAF0000
imm32 R6, 0xFACE
R6 = VIT_MAX (R5, R4) (ASR) || W[P0] = R6.L;
imm32 R6, 0xFACE
R4 = W[P0];
CC = R4 == R6;
IF !CC JUMP 1f;
imm32 R3, 0xFFFF0000
imm32 R1, 0xFACE
R1.L = VIT_MAX (R3) (ASL) || W[P0] = R1.L;
imm32 R1, 0xFACE
R4 = W[P0];
CC = R4 == R1;
IF !CC JUMP 1f;
imm32 R2, 0x1234FADE
imm32 R5, 0xFACE
R5.L = VIT_MAX (R2) (ASR) || W[P0] = R5.L;
imm32 R5, 0xFACE
R4 = W[P0];
CC = R4 == R5;
IF !CC JUMP 1f;
pass
1: fail
.data
scratch:
.dw 0xffff
|