diff options
Diffstat (limited to 'gas/testsuite')
-rw-r--r-- | gas/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/dv-mutex-err.l | 9 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/dv-mutex-err.s | 24 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/dv-mutex.d | 14 | ||||
-rw-r--r-- | gas/testsuite/gas/ia64/dv-mutex.s | 14 |
5 files changed, 68 insertions, 2 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 87e242c..0b33c0c 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2003-10-22 Andreas Schwab <schwab@suse.de> + H.J. Lu <hongjiu.lu@intel.com> + + * gas/ia64/dv-mutex-err.s: Add more tests for compare. + * gas/ia64/dv-mutex.s: Likewise. + + * gas/ia64/dv-mutex-err.l: Updated. + * gas/ia64/dv-mutex.d: Likewise. + 2003-10-18 Hans-Peter Nilsson <hp@bitrange.com> * gas/mmix/op-0-1.d, gas/mmix/pushj-c.d, gas/mmix/weak1.d: Add diff --git a/gas/testsuite/gas/ia64/dv-mutex-err.l b/gas/testsuite/gas/ia64/dv-mutex-err.l index a6df710..17960be 100644 --- a/gas/testsuite/gas/ia64/dv-mutex-err.l +++ b/gas/testsuite/gas/ia64/dv-mutex-err.l @@ -2,3 +2,12 @@ .*:9: Warning: Use of 'ld8' .* RAW dependency 'GR%, % in 1 - 127' \(impliedf\), specific resource number is 26 .*:9: Warning: Only the first path encountering the conflict is reported .*:8: Warning: This is the location of the conflicting usage +.*:14: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' \(impliedf\), specific resource number is 4 +.*:14: Warning: Only the first path encountering the conflict is reported +.*:13: Warning: This is the location of the conflicting usage +.*:20: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' \(impliedf\), specific resource number is 4 +.*:19: Warning: This is the location of the conflicting usage +.*:26: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' \(impliedf\), specific resource number is 4 +.*:25: Warning: This is the location of the conflicting usage +.*:32: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' \(impliedf\), specific resource number is 4 +.*:31: Warning: This is the location of the conflicting usage diff --git a/gas/testsuite/gas/ia64/dv-mutex-err.s b/gas/testsuite/gas/ia64/dv-mutex-err.s index e6eaaaa..dc39199 100644 --- a/gas/testsuite/gas/ia64/dv-mutex-err.s +++ b/gas/testsuite/gas/ia64/dv-mutex-err.s @@ -7,3 +7,27 @@ start: cmp.eq p6, p0 = r29, r0 add r26 = r26, r29 ld8 r29 = [r26] + + .pred.rel.mutex p1, p2 + cmp.eq p0, p1 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi + + .pred.rel.mutex p1, p2 +(p3) cmp.eq p0, p1 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi + + .pred.rel.mutex p1, p2 + cmp.eq p2, p3 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi + + .pred.rel.mutex p1, p2 +(p3) cmp.eq p2, p3 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi diff --git a/gas/testsuite/gas/ia64/dv-mutex.d b/gas/testsuite/gas/ia64/dv-mutex.d index 247c42e..2926ab2 100644 --- a/gas/testsuite/gas/ia64/dv-mutex.d +++ b/gas/testsuite/gas/ia64/dv-mutex.d @@ -19,9 +19,21 @@ Disassembly of section \.text: 30: 1d 00 00 00 01 00 \[MFB\] nop\.m 0x0 36: 00 00 00 02 00 00 nop\.f 0x0 3c: 00 00 20 00 rfi;; - 40: 60 08 06 04 02 78 \[MII\] \(p03\) cmp\.eq\.unc p1,p2=r1,r2 + 40: 6a 08 06 04 02 78 \[MMI\] \(p03\) cmp\.eq\.unc p1,p2=r1,r2;; 46: 40 10 00 00 42 81 \(p01\) mov r4=2 4c: 40 00 00 84 \(p02\) mov r4=4 50: 1d 00 00 00 01 00 \[MFB\] nop\.m 0x0 56: 00 00 00 02 00 00 nop\.f 0x0 5c: 00 00 20 00 rfi;; + 60: 0a 08 04 04 02 78 \[MMI\] cmp\.eq p1,p2=r1,r2;; + 66: 40 10 00 00 42 81 \(p01\) mov r4=2 + 6c: 40 00 00 84 \(p02\) mov r4=4 + 70: 1d 00 00 00 01 00 \[MFB\] nop\.m 0x0 + 76: 00 00 00 02 00 00 nop\.f 0x0 + 7c: 00 00 20 00 rfi;; + 80: 6a 08 04 04 02 78 \[MMI\] \(p03\) cmp\.eq p1,p2=r1,r2;; + 86: 40 10 00 00 42 81 \(p01\) mov r4=2 + 8c: 40 00 00 84 \(p02\) mov r4=4 + 90: 1d 00 00 00 01 00 \[MFB\] nop\.m 0x0 + 96: 00 00 00 02 00 00 nop\.f 0x0 + 9c: 00 00 20 00 rfi;; diff --git a/gas/testsuite/gas/ia64/dv-mutex.s b/gas/testsuite/gas/ia64/dv-mutex.s index 8704b27..c1841df 100644 --- a/gas/testsuite/gas/ia64/dv-mutex.s +++ b/gas/testsuite/gas/ia64/dv-mutex.s @@ -17,7 +17,19 @@ start: rfi // unconditional compares generate a mutex -(p3) cmp.eq.unc p1, p2 = r1, r2 +(p3) cmp.eq.unc p1, p2 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi + +// non-predicated compares don't remove mutex + cmp.eq p1, p2 = r1, r2;; +(p1) mov r4 = 2 +(p2) mov r4 = 4 + rfi + +// predicated compares don't remove mutex +(p3) cmp.eq p1, p2 = r1, r2;; (p1) mov r4 = 2 (p2) mov r4 = 4 rfi |