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/] [ia64/] [dv-imply.s] - Blame information for rev 219

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 205 julius
//
2
// Test various implies relations
3
//
4
.text
5
// User-supplied hint
6
        .pred.rel.imply p1, p2
7
(p1)    mov             r4 = 2
8
(p2)    br.cond.sptk            L
9
        mov             r4 = 7
10
        rfi
11
 
12
// Symmetric to previous example
13
        .pred.rel.imply p1, p2
14
        mov             r4 = 2
15
(p2)    br.cond.sptk    L
16
(p1)    mov             r4 = 7
17
        rfi
18
 
19
// Verify that the implies relationship caused by the unconditional compare
20
// prevents RAW on r4.
21
(p3)    cmp.eq.unc      p1, p2 = r1, r2;;       // p1,p2 imply p3
22
(p1)    mov             r4 = 2
23
(p3)    br.cond.sptk    L
24
        mov             r4 = 7
25
        rfi
26
 
27
// An instance of cmp.rel.or should not affect an implies relation.
28
(p3)    cmp.eq.unc      p1, p2 = r1, r2         // p1,p2 imply p3
29
        cmp.eq.or       p3, p4 = r5, r6;;       // doesn't affect implies rel
30
(p1)    mov             r4 = 2
31
(p3)    br.cond.sptk    L
32
        mov             r4 = 7
33
        rfi
34
 
35
// An instance of cmp.rel.and only affects imply targets
36
        .pred.rel.imply p1,p3
37
        cmp.ne.and      p1, p2 = r5, r6         // doesn't affect imply source
38
(p1)    mov             r4 = 2
39
(p3)    br.cond.sptk    L
40
        mov             r4 = 7
41
        rfi
42
 
43
// FIXME -- add tests for and.orcm and or.andcm
44
L:

powered by: WebSVN 2.1.0

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