| 1 | #objdump: -r |
| 2 | #as: -x |
| 3 | |
| 4 | .*: file format elf64-mmix |
| 5 | R.* \[\.text\.a0\]: |
| 6 | O.* |
| 7 | 0+40004 R_MMIX_PUSHJ \.text\.a0 |
| 8 | 0+40018 R_MMIX_PUSHJ \.text\.a0\+0x0+4 |
| 9 | R.* \[\.text\.b0\]: |
| 10 | O.* |
| 11 | 0+40004 R_MMIX_PUSHJ \.text\.b0 |
| 12 | 0+40018 R_MMIX_PUSHJ \.text\.b0\+0x0+4 |
| 13 | 0+4002c R_MMIX_PUSHJ \.text\.b0\+0x0+8 |
| 14 | R.* \[\.text\.c0\]: |
| 15 | O.* |
| 16 | 0+ R_MMIX_PUSHJ ca0 |
| 17 | 0+14 R_MMIX_PUSHJ cb0 |
| 18 | R.* \[\.text\.d0\]: |
| 19 | O.* |
| 20 | 0+ R_MMIX_PUSHJ da0 |
| 21 | 0+14 R_MMIX_PUSHJ db0 |
| 22 | 0+28 R_MMIX_PUSHJ dc0 |
| 23 | R.* \[\.text\.a1\]: |
| 24 | O.* |
| 25 | 0+40004 R_MMIX_PUSHJ \.text\.a1 |
| 26 | 0+40018 R_MMIX_PUSHJ_STUBBABLE \.text\.a1\+0x0+4 |
| 27 | R.* \[\.text\.b1\]: |
| 28 | O.* |
| 29 | 0+40004 R_MMIX_PUSHJ \.text\.b1 |
| 30 | 0+40018 R_MMIX_PUSHJ \.text\.b1\+0x0+4 |
| 31 | 0+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b1\+0x0+8 |
| 32 | R.* \[\.text\.c1\]: |
| 33 | O.* |
| 34 | 0+ R_MMIX_PUSHJ ca1 |
| 35 | 0+14 R_MMIX_PUSHJ_STUBBABLE cb1 |
| 36 | R.* \[\.text\.d1\]: |
| 37 | O.* |
| 38 | 0+ R_MMIX_PUSHJ da1 |
| 39 | 0+14 R_MMIX_PUSHJ db1 |
| 40 | 0+28 R_MMIX_PUSHJ_STUBBABLE dc1 |
| 41 | |
| 42 | # The following shows a limitation of the PUSHJ relaxation code when |
| 43 | # PUSHJ:s are close, and about 256k away from the section limit: On the |
| 44 | # first relaxation iteration, the first (or second) PUSHJ looks like it |
| 45 | # could reach a stub. However, the last PUSHJ is expanded and on the |
| 46 | # second iteration, the stubbed PUSHJ has to be expanded too because it |
| 47 | # can't reach the stubs anymore. This continues for the next iterations, |
| 48 | # because the max stub size is five tetrabytes (4-bytes). At the expense |
| 49 | # of much more complex relaxation code (including the relaxation machinery |
| 50 | # in write.c), this is fixable. Anyway, as long as PUSHJ:s aren't closer |
| 51 | # than five instructions, the existing code does suffice; we're just here |
| 52 | # to check that the border case *works* and doesn't generate invalid code. |
| 53 | |
| 54 | R.* \[\.text\.a2\]: |
| 55 | O.* |
| 56 | 0+40004 R_MMIX_PUSHJ \.text\.a2 |
| 57 | 0+40018 R_MMIX_PUSHJ \.text\.a2\+0x0+4 |
| 58 | R.* \[\.text\.b2\]: |
| 59 | O.* |
| 60 | 0+40004 R_MMIX_PUSHJ \.text\.b2 |
| 61 | 0+40018 R_MMIX_PUSHJ \.text\.b2\+0x0+4 |
| 62 | 0+4002c R_MMIX_PUSHJ \.text\.b2\+0x0+8 |
| 63 | R.* \[\.text\.c2\]: |
| 64 | O.* |
| 65 | 0+ R_MMIX_PUSHJ ca2 |
| 66 | 0+14 R_MMIX_PUSHJ cb2 |
| 67 | R.* \[\.text\.d2\]: |
| 68 | O.* |
| 69 | 0+ R_MMIX_PUSHJ da2 |
| 70 | 0+14 R_MMIX_PUSHJ db2 |
| 71 | 0+28 R_MMIX_PUSHJ dc2 |
| 72 | R.* \[\.text\.a3\]: |
| 73 | O.* |
| 74 | 0+40004 R_MMIX_PUSHJ \.text\.a3 |
| 75 | 0+40018 R_MMIX_PUSHJ \.text\.a3\+0x0+4 |
| 76 | R.* \[\.text\.b3\]: |
| 77 | O.* |
| 78 | 0+40004 R_MMIX_PUSHJ \.text\.b3 |
| 79 | 0+40018 R_MMIX_PUSHJ \.text\.b3\+0x0+4 |
| 80 | 0+4002c R_MMIX_PUSHJ \.text\.b3\+0x0+8 |
| 81 | R.* \[\.text\.c3\]: |
| 82 | O.* |
| 83 | 0+ R_MMIX_PUSHJ ca3 |
| 84 | 0+14 R_MMIX_PUSHJ cb3 |
| 85 | R.* \[\.text\.d3\]: |
| 86 | O.* |
| 87 | 0+ R_MMIX_PUSHJ da3 |
| 88 | 0+14 R_MMIX_PUSHJ db3 |
| 89 | 0+28 R_MMIX_PUSHJ dc3 |
| 90 | R.* \[\.text\.a4\]: |
| 91 | O.* |
| 92 | 0+40004 R_MMIX_PUSHJ \.text\.a4 |
| 93 | 0+40018 R_MMIX_PUSHJ \.text\.a4\+0x0+4 |
| 94 | R.* \[\.text\.b4\]: |
| 95 | O.* |
| 96 | 0+40004 R_MMIX_PUSHJ \.text\.b4 |
| 97 | 0+40018 R_MMIX_PUSHJ \.text\.b4\+0x0+4 |
| 98 | 0+4002c R_MMIX_PUSHJ \.text\.b4\+0x0+8 |
| 99 | R.* \[\.text\.c4\]: |
| 100 | O.* |
| 101 | 0+ R_MMIX_PUSHJ ca4 |
| 102 | 0+14 R_MMIX_PUSHJ cb4 |
| 103 | R.* \[\.text\.d4\]: |
| 104 | O.* |
| 105 | 0+ R_MMIX_PUSHJ da4 |
| 106 | 0+14 R_MMIX_PUSHJ db4 |
| 107 | 0+28 R_MMIX_PUSHJ dc4 |
| 108 | R.* \[\.text\.a5\]: |
| 109 | O.* |
| 110 | 0+40004 R_MMIX_PUSHJ \.text\.a5 |
| 111 | 0+40018 R_MMIX_PUSHJ \.text\.a5\+0x0+4 |
| 112 | R.* \[\.text\.b5\]: |
| 113 | O.* |
| 114 | 0+40004 R_MMIX_PUSHJ \.text\.b5 |
| 115 | 0+40018 R_MMIX_PUSHJ \.text\.b5\+0x0+4 |
| 116 | 0+4002c R_MMIX_PUSHJ \.text\.b5\+0x0+8 |
| 117 | R.* \[\.text\.c5\]: |
| 118 | O.* |
| 119 | 0+ R_MMIX_PUSHJ ca5 |
| 120 | 0+14 R_MMIX_PUSHJ cb5 |
| 121 | R.* \[\.text\.d5\]: |
| 122 | O.* |
| 123 | 0+ R_MMIX_PUSHJ da5 |
| 124 | 0+14 R_MMIX_PUSHJ db5 |
| 125 | 0+28 R_MMIX_PUSHJ dc5 |
| 126 | R.* \[\.text\.a6\]: |
| 127 | O.* |
| 128 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a6 |
| 129 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a6\+0x0+4 |
| 130 | R.* \[\.text\.b6\]: |
| 131 | O.* |
| 132 | 0+40004 R_MMIX_PUSHJ \.text\.b6 |
| 133 | 0+40018 R_MMIX_PUSHJ \.text\.b6\+0x0+4 |
| 134 | 0+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b6\+0x0+8 |
| 135 | R.* \[\.text\.c6\]: |
| 136 | O.* |
| 137 | 0+ R_MMIX_PUSHJ_STUBBABLE ca6 |
| 138 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb6 |
| 139 | R.* \[\.text\.d6\]: |
| 140 | O.* |
| 141 | 0+ R_MMIX_PUSHJ da6 |
| 142 | 0+14 R_MMIX_PUSHJ db6 |
| 143 | 0+28 R_MMIX_PUSHJ_STUBBABLE dc6 |
| 144 | R.* \[\.text\.a7\]: |
| 145 | O.* |
| 146 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a7 |
| 147 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a7\+0x0+4 |
| 148 | R.* \[\.text\.b7\]: |
| 149 | O.* |
| 150 | 0+40004 R_MMIX_PUSHJ \.text\.b7 |
| 151 | 0+40018 R_MMIX_PUSHJ \.text\.b7\+0x0+4 |
| 152 | 0+4002c R_MMIX_PUSHJ \.text\.b7\+0x0+8 |
| 153 | R.* \[\.text\.c7\]: |
| 154 | O.* |
| 155 | 0+ R_MMIX_PUSHJ_STUBBABLE ca7 |
| 156 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb7 |
| 157 | R.* \[\.text\.d7\]: |
| 158 | O.* |
| 159 | 0+ R_MMIX_PUSHJ da7 |
| 160 | 0+14 R_MMIX_PUSHJ db7 |
| 161 | 0+28 R_MMIX_PUSHJ dc7 |
| 162 | R.* \[\.text\.a8\]: |
| 163 | O.* |
| 164 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a8 |
| 165 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a8\+0x0+4 |
| 166 | R.* \[\.text\.b8\]: |
| 167 | O.* |
| 168 | 0+40004 R_MMIX_PUSHJ \.text\.b8 |
| 169 | 0+40018 R_MMIX_PUSHJ \.text\.b8\+0x0+4 |
| 170 | 0+4002c R_MMIX_PUSHJ \.text\.b8\+0x0+8 |
| 171 | R.* \[\.text\.c8\]: |
| 172 | O.* |
| 173 | 0+ R_MMIX_PUSHJ_STUBBABLE ca8 |
| 174 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb8 |
| 175 | R.* \[\.text\.d8\]: |
| 176 | O.* |
| 177 | 0+ R_MMIX_PUSHJ da8 |
| 178 | 0+14 R_MMIX_PUSHJ db8 |
| 179 | 0+28 R_MMIX_PUSHJ dc8 |
| 180 | R.* \[\.text\.a9\]: |
| 181 | O.* |
| 182 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a9 |
| 183 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a9\+0x0+4 |
| 184 | R.* \[\.text\.b9\]: |
| 185 | O.* |
| 186 | 0+40004 R_MMIX_PUSHJ \.text\.b9 |
| 187 | 0+40018 R_MMIX_PUSHJ \.text\.b9\+0x0+4 |
| 188 | 0+4002c R_MMIX_PUSHJ \.text\.b9\+0x0+8 |
| 189 | R.* \[\.text\.c9\]: |
| 190 | O.* |
| 191 | 0+ R_MMIX_PUSHJ_STUBBABLE ca9 |
| 192 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb9 |
| 193 | R.* \[\.text\.d9\]: |
| 194 | O.* |
| 195 | 0+ R_MMIX_PUSHJ da9 |
| 196 | 0+14 R_MMIX_PUSHJ db9 |
| 197 | 0+28 R_MMIX_PUSHJ dc9 |
| 198 | R.* \[\.text\.a10\]: |
| 199 | O.* |
| 200 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a10 |
| 201 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a10\+0x0+4 |
| 202 | R.* \[\.text\.b10\]: |
| 203 | O.* |
| 204 | 0+40004 R_MMIX_PUSHJ \.text\.b10 |
| 205 | 0+40018 R_MMIX_PUSHJ \.text\.b10\+0x0+4 |
| 206 | 0+4002c R_MMIX_PUSHJ \.text\.b10\+0x0+8 |
| 207 | R.* \[\.text\.c10\]: |
| 208 | O.* |
| 209 | 0+ R_MMIX_PUSHJ_STUBBABLE ca10 |
| 210 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb10 |
| 211 | R.* \[\.text\.d10\]: |
| 212 | O.* |
| 213 | 0+ R_MMIX_PUSHJ da10 |
| 214 | 0+14 R_MMIX_PUSHJ db10 |
| 215 | 0+28 R_MMIX_PUSHJ dc10 |
| 216 | R.* \[\.text\.a11\]: |
| 217 | O.* |
| 218 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a11 |
| 219 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a11\+0x0+4 |
| 220 | R.* \[\.text\.b11\]: |
| 221 | O.* |
| 222 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b11 |
| 223 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+4 |
| 224 | 0+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+8 |
| 225 | R.* \[\.text\.c11\]: |
| 226 | O.* |
| 227 | 0+ R_MMIX_PUSHJ_STUBBABLE ca11 |
| 228 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb11 |
| 229 | R.* \[\.text\.d11\]: |
| 230 | O.* |
| 231 | 0+ R_MMIX_PUSHJ_STUBBABLE da11 |
| 232 | 0+4 R_MMIX_PUSHJ_STUBBABLE db11 |
| 233 | 0+8 R_MMIX_PUSHJ_STUBBABLE dc11 |
| 234 | R.* \[\.text\.a12\]: |
| 235 | O.* |
| 236 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a12 |
| 237 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a12\+0x0+4 |
| 238 | R.* \[\.text\.b12\]: |
| 239 | O.* |
| 240 | 0+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b12 |
| 241 | 0+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+4 |
| 242 | 0+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+8 |
| 243 | R.* \[\.text\.c12\]: |
| 244 | O.* |
| 245 | 0+ R_MMIX_PUSHJ_STUBBABLE ca12 |
| 246 | 0+4 R_MMIX_PUSHJ_STUBBABLE cb12 |
| 247 | R.* \[\.text\.d12\]: |
| 248 | O.* |
| 249 | 0+ R_MMIX_PUSHJ_STUBBABLE da12 |
| 250 | 0+4 R_MMIX_PUSHJ_STUBBABLE db12 |
| 251 | 0+8 R_MMIX_PUSHJ_STUBBABLE dc12 |