Fix some ia64 gas failures.
This commit is contained in:
parent
2935d1c22e
commit
9a8f29e36f
5 changed files with 15 additions and 7 deletions
|
@ -1,3 +1,11 @@
|
||||||
|
2000-08-29 Timothy Wall <twall@cygnus.com>
|
||||||
|
|
||||||
|
* gas/ia64/dv-mutex.s: Add stop to avoid DV error on cmp.eq.
|
||||||
|
* gas/ia64/dv-mutex.d: Update regexp pattern.
|
||||||
|
* gas/ia64/dv-entry-err.s: Add stop to avoid DV error on cmp.eq.
|
||||||
|
* gas/ia64/dv-imply.s: Add stops to avoid DV errors on cmp.REL.
|
||||||
|
Test still fails due to insn opcode pattern changes.
|
||||||
|
|
||||||
2000-08-21 H.J. Lu <hjl@gnu.org>
|
2000-08-21 H.J. Lu <hjl@gnu.org>
|
||||||
|
|
||||||
* gas/all/cofftag.d: Support the strict COFF.
|
* gas/all/cofftag.d: Support the strict COFF.
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
//
|
//
|
||||||
.text
|
.text
|
||||||
.explicit
|
.explicit
|
||||||
// RAW on r4 is avoided on both paths
|
// WAW on r4 is avoided on both paths
|
||||||
// RAW on r5 is avoided on path 0 (from top) but not path 1 (from L)
|
// WAW on r5 is avoided on path 0 (from top) but not path 1 (from L)
|
||||||
cmp.eq p1, p2 = r1, r2
|
cmp.eq p1, p2 = r1, r2
|
||||||
cmp.eq p3, p4 = r3, r0
|
cmp.eq p3, p4 = r3, r0;;
|
||||||
(p1) mov r4 = 2
|
(p1) mov r4 = 2
|
||||||
L:
|
L:
|
||||||
(p2) mov r4 = 5
|
(p2) mov r4 = 5
|
||||||
|
|
|
@ -18,7 +18,7 @@
|
||||||
|
|
||||||
// Verify that the implies relationship caused by the unconditional compare
|
// Verify that the implies relationship caused by the unconditional compare
|
||||||
// prevents RAW on r4.
|
// prevents RAW on r4.
|
||||||
(p3) cmp.eq.unc p1, p2 = r1, r2 // p1,p2 imply p3
|
(p3) cmp.eq.unc p1, p2 = r1, r2;; // p1,p2 imply p3
|
||||||
(p1) mov r4 = 2
|
(p1) mov r4 = 2
|
||||||
(p3) br.cond.sptk L
|
(p3) br.cond.sptk L
|
||||||
mov r4 = 7
|
mov r4 = 7
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
|
|
||||||
// An instance of cmp.rel.or should not affect an implies relation.
|
// An instance of cmp.rel.or should not affect an implies relation.
|
||||||
(p3) cmp.eq.unc p1, p2 = r1, r2 // p1,p2 imply p3
|
(p3) cmp.eq.unc p1, p2 = r1, r2 // p1,p2 imply p3
|
||||||
cmp.eq.or p3, p4 = r5, r6 // doesn't affect implies rel
|
cmp.eq.or p3, p4 = r5, r6;; // doesn't affect implies rel
|
||||||
(p1) mov r4 = 2
|
(p1) mov r4 = 2
|
||||||
(p3) br.cond.sptk L
|
(p3) br.cond.sptk L
|
||||||
mov r4 = 7
|
mov r4 = 7
|
||||||
|
|
|
@ -13,7 +13,7 @@ Disassembly of section \.text:
|
||||||
10: 11 00 00 00 01 00 \[MIB\] nop\.m 0x0
|
10: 11 00 00 00 01 00 \[MIB\] nop\.m 0x0
|
||||||
16: 00 00 00 02 00 00 nop\.i 0x0
|
16: 00 00 00 02 00 00 nop\.i 0x0
|
||||||
1c: 00 00 20 00 rfi;;
|
1c: 00 00 20 00 rfi;;
|
||||||
20: 00 08 04 04 02 78 \[MII\] cmp\.eq p1,p2=r1,r2
|
20: 0a 08 04 04 02 78 \[MMI\] cmp\.eq p1,p2=r1,r2;;
|
||||||
26: 40 10 00 00 42 81 \(p01\) mov r4=2
|
26: 40 10 00 00 42 81 \(p01\) mov r4=2
|
||||||
2c: 40 00 00 84 \(p02\) mov r4=4
|
2c: 40 00 00 84 \(p02\) mov r4=4
|
||||||
30: 11 00 00 00 01 00 \[MIB\] nop\.m 0x0
|
30: 11 00 00 00 01 00 \[MIB\] nop\.m 0x0
|
||||||
|
|
|
@ -11,7 +11,7 @@ start:
|
||||||
rfi
|
rfi
|
||||||
|
|
||||||
// non-predicated compares generate a mutex
|
// non-predicated compares generate a mutex
|
||||||
cmp.eq p1, p2 = r1, r2
|
cmp.eq p1, p2 = r1, r2;;
|
||||||
(p1) mov r4 = 2
|
(p1) mov r4 = 2
|
||||||
(p2) mov r4 = 4
|
(p2) mov r4 = 4
|
||||||
rfi
|
rfi
|
||||||
|
|
Loading…
Add table
Reference in a new issue