From 54b3292ad14c86347e2f09db4061f9fc25b6cf00 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 26 May 2004 17:48:59 +0000 Subject: [PATCH] 2004-05-26 H.J. Lu * gas/ia64/ia64.exp: Run invalid-ar. * gas/ia64/invalid-ar.l: New file. Test invalid AR access. * gas/ia64/invalid-ar.s: Likewise. --- gas/testsuite/ChangeLog | 7 ++ gas/testsuite/gas/ia64/ia64.exp | 2 + gas/testsuite/gas/ia64/invalid-ar.l | 124 +++++++++++++++++++++++++ gas/testsuite/gas/ia64/invalid-ar.s | 134 ++++++++++++++++++++++++++++ 4 files changed, 267 insertions(+) create mode 100644 gas/testsuite/gas/ia64/invalid-ar.l create mode 100644 gas/testsuite/gas/ia64/invalid-ar.s diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 99983681a4..2169b61056 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2004-05-26 H.J. Lu + + * gas/ia64/ia64.exp: Run invalid-ar. + + * gas/ia64/invalid-ar.l: New file. Test invalid AR access. + * gas/ia64/invalid-ar.s: Likewise. + 2004-05-24 Peter Barada * gas/m68k/mcf-emac.d: Provide correct disassembler results. diff --git a/gas/testsuite/gas/ia64/ia64.exp b/gas/testsuite/gas/ia64/ia64.exp index 9990d27a5e..df9feb029b 100644 --- a/gas/testsuite/gas/ia64/ia64.exp +++ b/gas/testsuite/gas/ia64/ia64.exp @@ -40,6 +40,8 @@ if [istarget "ia64-*"] then { run_list_test "ldxmov-2" "" run_dump_test "ltoff22x-1" + run_list_test "invalid-ar" "" + run_dump_test "dependency-1" run_dump_test "real" diff --git a/gas/testsuite/gas/ia64/invalid-ar.l b/gas/testsuite/gas/ia64/invalid-ar.l new file mode 100644 index 0000000000..be8ed252ec --- /dev/null +++ b/gas/testsuite/gas/ia64/invalid-ar.l @@ -0,0 +1,124 @@ +.*: Assembler messages: +.*:2: Error: AR 0 cannot be accessed by M-unit +.*:3: Error: AR 1 cannot be accessed by M-unit +.*:4: Error: AR 2 cannot be accessed by M-unit +.*:5: Error: AR 3 cannot be accessed by M-unit +.*:6: Error: AR 4 cannot be accessed by M-unit +.*:7: Error: AR 5 cannot be accessed by M-unit +.*:8: Error: AR 6 cannot be accessed by M-unit +.*:9: Error: AR 7 cannot be accessed by M-unit +.*:10: Error: AR 8 cannot be accessed by M-unit +.*:11: Error: AR 9 cannot be accessed by M-unit +.*:12: Error: AR 10 cannot be accessed by M-unit +.*:13: Error: AR 11 cannot be accessed by M-unit +.*:14: Error: AR 12 cannot be accessed by M-unit +.*:15: Error: AR 13 cannot be accessed by M-unit +.*:16: Error: AR 14 cannot be accessed by M-unit +.*:17: Error: AR 15 cannot be accessed by M-unit +.*:18: Error: AR 16 cannot be accessed by M-unit +.*:19: Error: AR 17 cannot be accessed by M-unit +.*:20: Error: AR 18 cannot be accessed by M-unit +.*:21: Error: AR 19 cannot be accessed by M-unit +.*:22: Error: AR 20 cannot be accessed by M-unit +.*:23: Error: AR 21 cannot be accessed by M-unit +.*:24: Error: AR 22 cannot be accessed by M-unit +.*:25: Error: AR 23 cannot be accessed by M-unit +.*:26: Error: AR 24 cannot be accessed by M-unit +.*:27: Error: AR 25 cannot be accessed by M-unit +.*:28: Error: AR 26 cannot be accessed by M-unit +.*:29: Error: AR 27 cannot be accessed by M-unit +.*:30: Error: AR 28 cannot be accessed by M-unit +.*:31: Error: AR 29 cannot be accessed by M-unit +.*:32: Error: AR 30 cannot be accessed by M-unit +.*:33: Error: AR 31 cannot be accessed by M-unit +.*:34: Error: AR 32 cannot be accessed by M-unit +.*:35: Error: AR 33 cannot be accessed by M-unit +.*:36: Error: AR 34 cannot be accessed by M-unit +.*:37: Error: AR 35 cannot be accessed by M-unit +.*:38: Error: AR 36 cannot be accessed by M-unit +.*:39: Error: AR 37 cannot be accessed by M-unit +.*:40: Error: AR 38 cannot be accessed by M-unit +.*:41: Error: AR 39 cannot be accessed by M-unit +.*:42: Error: AR 40 cannot be accessed by M-unit +.*:43: Error: AR 41 cannot be accessed by M-unit +.*:44: Error: AR 42 cannot be accessed by M-unit +.*:45: Error: AR 43 cannot be accessed by M-unit +.*:46: Error: AR 44 cannot be accessed by M-unit +.*:47: Error: AR 45 cannot be accessed by M-unit +.*:48: Error: AR 46 cannot be accessed by M-unit +.*:49: Error: AR 47 cannot be accessed by M-unit +.*:54: Error: AR 64 cannot be accessed by I-unit +.*:55: Error: AR 65 cannot be accessed by I-unit +.*:56: Error: AR 66 cannot be accessed by I-unit +.*:57: Error: AR 67 cannot be accessed by I-unit +.*:58: Error: AR 68 cannot be accessed by I-unit +.*:59: Error: AR 69 cannot be accessed by I-unit +.*:60: Error: AR 70 cannot be accessed by I-unit +.*:61: Error: AR 71 cannot be accessed by I-unit +.*:62: Error: AR 72 cannot be accessed by I-unit +.*:63: Error: AR 73 cannot be accessed by I-unit +.*:64: Error: AR 74 cannot be accessed by I-unit +.*:65: Error: AR 75 cannot be accessed by I-unit +.*:66: Error: AR 76 cannot be accessed by I-unit +.*:67: Error: AR 77 cannot be accessed by I-unit +.*:68: Error: AR 78 cannot be accessed by I-unit +.*:69: Error: AR 79 cannot be accessed by I-unit +.*:70: Error: AR 80 cannot be accessed by I-unit +.*:71: Error: AR 81 cannot be accessed by I-unit +.*:72: Error: AR 82 cannot be accessed by I-unit +.*:73: Error: AR 83 cannot be accessed by I-unit +.*:74: Error: AR 84 cannot be accessed by I-unit +.*:75: Error: AR 85 cannot be accessed by I-unit +.*:76: Error: AR 86 cannot be accessed by I-unit +.*:77: Error: AR 87 cannot be accessed by I-unit +.*:78: Error: AR 88 cannot be accessed by I-unit +.*:79: Error: AR 89 cannot be accessed by I-unit +.*:80: Error: AR 90 cannot be accessed by I-unit +.*:81: Error: AR 91 cannot be accessed by I-unit +.*:82: Error: AR 92 cannot be accessed by I-unit +.*:83: Error: AR 93 cannot be accessed by I-unit +.*:84: Error: AR 94 cannot be accessed by I-unit +.*:85: Error: AR 95 cannot be accessed by I-unit +.*:86: Error: AR 96 cannot be accessed by I-unit +.*:87: Error: AR 97 cannot be accessed by I-unit +.*:88: Error: AR 98 cannot be accessed by I-unit +.*:89: Error: AR 99 cannot be accessed by I-unit +.*:90: Error: AR 100 cannot be accessed by I-unit +.*:91: Error: AR 101 cannot be accessed by I-unit +.*:92: Error: AR 102 cannot be accessed by I-unit +.*:93: Error: AR 103 cannot be accessed by I-unit +.*:94: Error: AR 104 cannot be accessed by I-unit +.*:95: Error: AR 105 cannot be accessed by I-unit +.*:96: Error: AR 106 cannot be accessed by I-unit +.*:97: Error: AR 107 cannot be accessed by I-unit +.*:98: Error: AR 108 cannot be accessed by I-unit +.*:99: Error: AR 109 cannot be accessed by I-unit +.*:100: Error: AR 110 cannot be accessed by I-unit +.*:101: Error: AR 111 cannot be accessed by I-unit +.*:106: Error: AR 0 cannot be accessed by M-unit +.*:107: Error: AR 1 cannot be accessed by M-unit +.*:108: Error: AR 2 cannot be accessed by M-unit +.*:109: Error: AR 3 cannot be accessed by M-unit +.*:110: Error: AR 4 cannot be accessed by M-unit +.*:111: Error: AR 5 cannot be accessed by M-unit +.*:112: Error: AR 6 cannot be accessed by M-unit +.*:113: Error: AR 7 cannot be accessed by M-unit +.*:114: Error: AR 16 cannot be accessed by M-unit +.*:115: Error: AR 17 cannot be accessed by M-unit +.*:116: Error: AR 18 cannot be accessed by M-unit +.*:117: Error: AR 19 cannot be accessed by M-unit +.*:118: Error: AR 21 cannot be accessed by M-unit +.*:119: Error: AR 24 cannot be accessed by M-unit +.*:120: Error: AR 25 cannot be accessed by M-unit +.*:121: Error: AR 26 cannot be accessed by M-unit +.*:122: Error: AR 27 cannot be accessed by M-unit +.*:123: Error: AR 28 cannot be accessed by M-unit +.*:124: Error: AR 29 cannot be accessed by M-unit +.*:125: Error: AR 30 cannot be accessed by M-unit +.*:126: Error: AR 32 cannot be accessed by M-unit +.*:127: Error: AR 36 cannot be accessed by M-unit +.*:128: Error: AR 40 cannot be accessed by M-unit +.*:129: Error: AR 44 cannot be accessed by M-unit +.*:132: Error: AR 64 cannot be accessed by I-unit +.*:133: Error: AR 65 cannot be accessed by I-unit +.*:134: Error: AR 66 cannot be accessed by I-unit diff --git a/gas/testsuite/gas/ia64/invalid-ar.s b/gas/testsuite/gas/ia64/invalid-ar.s new file mode 100644 index 0000000000..79c264164a --- /dev/null +++ b/gas/testsuite/gas/ia64/invalid-ar.s @@ -0,0 +1,134 @@ +// AR 0 to AR 47 can be accessed only by M unit. + mov.i r1 = ar0 + mov.i r1 = ar1 + mov.i r1 = ar2 + mov.i r1 = ar3 + mov.i r1 = ar4 + mov.i r1 = ar5 + mov.i r1 = ar6 + mov.i r1 = ar7 + mov.i r1 = ar8 + mov.i r1 = ar9 + mov.i r1 = ar10 + mov.i r1 = ar11 + mov.i r1 = ar12 + mov.i r1 = ar13 + mov.i r1 = ar14 + mov.i r1 = ar15 + mov.i r1 = ar16 + mov.i r1 = ar17 + mov.i r1 = ar18 + mov.i r1 = ar19 + mov.i r1 = ar20 + mov.i r1 = ar21 + mov.i r1 = ar22 + mov.i r1 = ar23 + mov.i r1 = ar24 + mov.i r1 = ar25 + mov.i r1 = ar26 + mov.i r1 = ar27 + mov.i r1 = ar28 + mov.i r1 = ar29 + mov.i r1 = ar30 + mov.i r1 = ar31 + mov.i r1 = ar32 + mov.i r1 = ar33 + mov.i r1 = ar34 + mov.i r1 = ar35 + mov.i r1 = ar36 + mov.i r1 = ar37 + mov.i r1 = ar38 + mov.i r1 = ar39 + mov.i r1 = ar40 + mov.i r1 = ar41 + mov.i r1 = ar42 + mov.i r1 = ar43 + mov.i r1 = ar44 + mov.i r1 = ar45 + mov.i r1 = ar46 + mov.i r1 = ar47 + +// AR 48 to 63 can be accessed by I or M units. + +// AR 64 to AR 111 can be accessed only by I unit. + mov.m r1 = ar64 + mov.m r1 = ar65 + mov.m r1 = ar66 + mov.m r1 = ar67 + mov.m r1 = ar68 + mov.m r1 = ar69 + mov.m r1 = ar70 + mov.m r1 = ar71 + mov.m r1 = ar72 + mov.m r1 = ar73 + mov.m r1 = ar74 + mov.m r1 = ar75 + mov.m r1 = ar76 + mov.m r1 = ar77 + mov.m r1 = ar78 + mov.m r1 = ar79 + mov.m r1 = ar80 + mov.m r1 = ar81 + mov.m r1 = ar82 + mov.m r1 = ar83 + mov.m r1 = ar84 + mov.m r1 = ar85 + mov.m r1 = ar86 + mov.m r1 = ar87 + mov.m r1 = ar88 + mov.m r1 = ar89 + mov.m r1 = ar90 + mov.m r1 = ar91 + mov.m r1 = ar92 + mov.m r1 = ar93 + mov.m r1 = ar94 + mov.m r1 = ar95 + mov.m r1 = ar96 + mov.m r1 = ar97 + mov.m r1 = ar98 + mov.m r1 = ar99 + mov.m r1 = ar100 + mov.m r1 = ar101 + mov.m r1 = ar102 + mov.m r1 = ar103 + mov.m r1 = ar104 + mov.m r1 = ar105 + mov.m r1 = ar106 + mov.m r1 = ar107 + mov.m r1 = ar108 + mov.m r1 = ar109 + mov.m r1 = ar110 + mov.m r1 = ar111 + +// AR 112 to 127 can be accessed by I or M units. + +// AR K0 to AR ITC can be accessed only by M unit. + mov.i r1 = ar.k0 + mov.i r1 = ar.k1 + mov.i r1 = ar.k2 + mov.i r1 = ar.k3 + mov.i r1 = ar.k4 + mov.i r1 = ar.k5 + mov.i r1 = ar.k6 + mov.i r1 = ar.k7 + mov.i r1 = ar.rsc + mov.i r1 = ar.bsp + mov.i r1 = ar.bspstore + mov.i r1 = ar.rnat + mov.i r1 = ar.fcr + mov.i r1 = ar.eflag + mov.i r1 = ar.csd + mov.i r1 = ar.ssd + mov.i r1 = ar.cflg + mov.i r1 = ar.fsr + mov.i r1 = ar.fir + mov.i r1 = ar.fdr + mov.i r1 = ar.ccv + mov.i r1 = ar.unat + mov.i r1 = ar.fpsr + mov.i r1 = ar.itc + +// AR PFS, LC and EC can be accessed only by I unit. + mov.m r1 = ar.pfs + mov.m r1 = ar.lc + mov.m r1 = ar.ec