OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [gnu-src/] [binutils-2.20.1/] [gas/] [testsuite/] [gas/] [arm/] [neon-cond-bad-inc.s] - Blame information for rev 205

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
# Check for illegal conditional Neon instructions in ARM mode. The instructions
2
# which overlap with VFP are the tricky cases, so test those.
3
 
4
        .include "itblock.s"
5
 
6
        .syntax unified
7
        .text
8
func:
9
        itblock 4 eq
10
        vmoveq q0,q1
11
        vmoveq d0,d1
12
        vmoveq.i32 q0,#0
13
        vmoveq.i32 d0,#0
14
        @ Following four *can* be conditional.
15
        itblock 4 eq
16
        vmoveq.32 d0[1], r2
17
        vmoveq d0,r1,r2
18
        vmoveq.32 r2,d1[0]
19
        vmoveq r0,r1,d2
20
 
21
        .macro dyadic_eq op eq="eq" f32=".f32"
22
        itblock 2 eq
23
        \op\eq\f32 d0,d1,d2
24
        \op\eq\f32 q0,q1,q2
25
        .endm
26
 
27
        dyadic_eq vmul
28
        dyadic_eq vmla
29
        dyadic_eq vmls
30
        dyadic_eq vadd
31
        dyadic_eq vsub
32
 
33
        .macro monadic_eq op eq="eq" f32=".f32"
34
        itblock 2 eq
35
        \op\eq\f32 d0,d1
36
        \op\eq\f32 q0,q1
37
        .endm
38
 
39
        monadic_eq vabs
40
        monadic_eq vneg
41
 
42
        .macro cvt to from dot="."
43
        itblock 2 eq
44
        vcvteq\dot\to\dot\from d0,d1
45
        vcvteq\dot\to\dot\from q0,q1
46
        .endm
47
 
48
        cvt s32 f32
49
        cvt u32 f32
50
        cvt f32 s32
51
        cvt f32 u32
52
 
53
        itblock 4 eq
54
        vdupeq.32 d0,r1
55
        vdupeq.32 q0,r1
56
        vdupeq.32 d0,d1[0]
57
        vdupeq.32 q0,d1[1]

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.