1#objdump: -r 2#as: -x 3 4.*: file format elf64-mmix 5R.* \[\.text\.a0\]: 6O.* 70+40004 R_MMIX_PUSHJ \.text\.a0 80+40018 R_MMIX_PUSHJ \.text\.a0\+0x0+4 9R.* \[\.text\.b0\]: 10O.* 110+40004 R_MMIX_PUSHJ \.text\.b0 120+40018 R_MMIX_PUSHJ \.text\.b0\+0x0+4 130+4002c R_MMIX_PUSHJ \.text\.b0\+0x0+8 14R.* \[\.text\.c0\]: 15O.* 160+ R_MMIX_PUSHJ ca0 170+14 R_MMIX_PUSHJ cb0 18R.* \[\.text\.d0\]: 19O.* 200+ R_MMIX_PUSHJ da0 210+14 R_MMIX_PUSHJ db0 220+28 R_MMIX_PUSHJ dc0 23R.* \[\.text\.a1\]: 24O.* 250+40004 R_MMIX_PUSHJ \.text\.a1 260+40018 R_MMIX_PUSHJ_STUBBABLE \.text\.a1\+0x0+4 27R.* \[\.text\.b1\]: 28O.* 290+40004 R_MMIX_PUSHJ \.text\.b1 300+40018 R_MMIX_PUSHJ \.text\.b1\+0x0+4 310+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b1\+0x0+8 32R.* \[\.text\.c1\]: 33O.* 340+ R_MMIX_PUSHJ ca1 350+14 R_MMIX_PUSHJ_STUBBABLE cb1 36R.* \[\.text\.d1\]: 37O.* 380+ R_MMIX_PUSHJ da1 390+14 R_MMIX_PUSHJ db1 400+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 54R.* \[\.text\.a2\]: 55O.* 560+40004 R_MMIX_PUSHJ \.text\.a2 570+40018 R_MMIX_PUSHJ \.text\.a2\+0x0+4 58R.* \[\.text\.b2\]: 59O.* 600+40004 R_MMIX_PUSHJ \.text\.b2 610+40018 R_MMIX_PUSHJ \.text\.b2\+0x0+4 620+4002c R_MMIX_PUSHJ \.text\.b2\+0x0+8 63R.* \[\.text\.c2\]: 64O.* 650+ R_MMIX_PUSHJ ca2 660+14 R_MMIX_PUSHJ cb2 67R.* \[\.text\.d2\]: 68O.* 690+ R_MMIX_PUSHJ da2 700+14 R_MMIX_PUSHJ db2 710+28 R_MMIX_PUSHJ dc2 72R.* \[\.text\.a3\]: 73O.* 740+40004 R_MMIX_PUSHJ \.text\.a3 750+40018 R_MMIX_PUSHJ \.text\.a3\+0x0+4 76R.* \[\.text\.b3\]: 77O.* 780+40004 R_MMIX_PUSHJ \.text\.b3 790+40018 R_MMIX_PUSHJ \.text\.b3\+0x0+4 800+4002c R_MMIX_PUSHJ \.text\.b3\+0x0+8 81R.* \[\.text\.c3\]: 82O.* 830+ R_MMIX_PUSHJ ca3 840+14 R_MMIX_PUSHJ cb3 85R.* \[\.text\.d3\]: 86O.* 870+ R_MMIX_PUSHJ da3 880+14 R_MMIX_PUSHJ db3 890+28 R_MMIX_PUSHJ dc3 90R.* \[\.text\.a4\]: 91O.* 920+40004 R_MMIX_PUSHJ \.text\.a4 930+40018 R_MMIX_PUSHJ \.text\.a4\+0x0+4 94R.* \[\.text\.b4\]: 95O.* 960+40004 R_MMIX_PUSHJ \.text\.b4 970+40018 R_MMIX_PUSHJ \.text\.b4\+0x0+4 980+4002c R_MMIX_PUSHJ \.text\.b4\+0x0+8 99R.* \[\.text\.c4\]: 100O.* 1010+ R_MMIX_PUSHJ ca4 1020+14 R_MMIX_PUSHJ cb4 103R.* \[\.text\.d4\]: 104O.* 1050+ R_MMIX_PUSHJ da4 1060+14 R_MMIX_PUSHJ db4 1070+28 R_MMIX_PUSHJ dc4 108R.* \[\.text\.a5\]: 109O.* 1100+40004 R_MMIX_PUSHJ \.text\.a5 1110+40018 R_MMIX_PUSHJ \.text\.a5\+0x0+4 112R.* \[\.text\.b5\]: 113O.* 1140+40004 R_MMIX_PUSHJ \.text\.b5 1150+40018 R_MMIX_PUSHJ \.text\.b5\+0x0+4 1160+4002c R_MMIX_PUSHJ \.text\.b5\+0x0+8 117R.* \[\.text\.c5\]: 118O.* 1190+ R_MMIX_PUSHJ ca5 1200+14 R_MMIX_PUSHJ cb5 121R.* \[\.text\.d5\]: 122O.* 1230+ R_MMIX_PUSHJ da5 1240+14 R_MMIX_PUSHJ db5 1250+28 R_MMIX_PUSHJ dc5 126R.* \[\.text\.a6\]: 127O.* 1280+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a6 1290+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a6\+0x0+4 130R.* \[\.text\.b6\]: 131O.* 1320+40004 R_MMIX_PUSHJ \.text\.b6 1330+40018 R_MMIX_PUSHJ \.text\.b6\+0x0+4 1340+4002c R_MMIX_PUSHJ_STUBBABLE \.text\.b6\+0x0+8 135R.* \[\.text\.c6\]: 136O.* 1370+ R_MMIX_PUSHJ_STUBBABLE ca6 1380+4 R_MMIX_PUSHJ_STUBBABLE cb6 139R.* \[\.text\.d6\]: 140O.* 1410+ R_MMIX_PUSHJ da6 1420+14 R_MMIX_PUSHJ db6 1430+28 R_MMIX_PUSHJ_STUBBABLE dc6 144R.* \[\.text\.a7\]: 145O.* 1460+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a7 1470+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a7\+0x0+4 148R.* \[\.text\.b7\]: 149O.* 1500+40004 R_MMIX_PUSHJ \.text\.b7 1510+40018 R_MMIX_PUSHJ \.text\.b7\+0x0+4 1520+4002c R_MMIX_PUSHJ \.text\.b7\+0x0+8 153R.* \[\.text\.c7\]: 154O.* 1550+ R_MMIX_PUSHJ_STUBBABLE ca7 1560+4 R_MMIX_PUSHJ_STUBBABLE cb7 157R.* \[\.text\.d7\]: 158O.* 1590+ R_MMIX_PUSHJ da7 1600+14 R_MMIX_PUSHJ db7 1610+28 R_MMIX_PUSHJ dc7 162R.* \[\.text\.a8\]: 163O.* 1640+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a8 1650+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a8\+0x0+4 166R.* \[\.text\.b8\]: 167O.* 1680+40004 R_MMIX_PUSHJ \.text\.b8 1690+40018 R_MMIX_PUSHJ \.text\.b8\+0x0+4 1700+4002c R_MMIX_PUSHJ \.text\.b8\+0x0+8 171R.* \[\.text\.c8\]: 172O.* 1730+ R_MMIX_PUSHJ_STUBBABLE ca8 1740+4 R_MMIX_PUSHJ_STUBBABLE cb8 175R.* \[\.text\.d8\]: 176O.* 1770+ R_MMIX_PUSHJ da8 1780+14 R_MMIX_PUSHJ db8 1790+28 R_MMIX_PUSHJ dc8 180R.* \[\.text\.a9\]: 181O.* 1820+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a9 1830+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a9\+0x0+4 184R.* \[\.text\.b9\]: 185O.* 1860+40004 R_MMIX_PUSHJ \.text\.b9 1870+40018 R_MMIX_PUSHJ \.text\.b9\+0x0+4 1880+4002c R_MMIX_PUSHJ \.text\.b9\+0x0+8 189R.* \[\.text\.c9\]: 190O.* 1910+ R_MMIX_PUSHJ_STUBBABLE ca9 1920+4 R_MMIX_PUSHJ_STUBBABLE cb9 193R.* \[\.text\.d9\]: 194O.* 1950+ R_MMIX_PUSHJ da9 1960+14 R_MMIX_PUSHJ db9 1970+28 R_MMIX_PUSHJ dc9 198R.* \[\.text\.a10\]: 199O.* 2000+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a10 2010+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a10\+0x0+4 202R.* \[\.text\.b10\]: 203O.* 2040+40004 R_MMIX_PUSHJ \.text\.b10 2050+40018 R_MMIX_PUSHJ \.text\.b10\+0x0+4 2060+4002c R_MMIX_PUSHJ \.text\.b10\+0x0+8 207R.* \[\.text\.c10\]: 208O.* 2090+ R_MMIX_PUSHJ_STUBBABLE ca10 2100+4 R_MMIX_PUSHJ_STUBBABLE cb10 211R.* \[\.text\.d10\]: 212O.* 2130+ R_MMIX_PUSHJ da10 2140+14 R_MMIX_PUSHJ db10 2150+28 R_MMIX_PUSHJ dc10 216R.* \[\.text\.a11\]: 217O.* 2180+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a11 2190+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a11\+0x0+4 220R.* \[\.text\.b11\]: 221O.* 2220+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b11 2230+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+4 2240+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b11\+0x0+8 225R.* \[\.text\.c11\]: 226O.* 2270+ R_MMIX_PUSHJ_STUBBABLE ca11 2280+4 R_MMIX_PUSHJ_STUBBABLE cb11 229R.* \[\.text\.d11\]: 230O.* 2310+ R_MMIX_PUSHJ_STUBBABLE da11 2320+4 R_MMIX_PUSHJ_STUBBABLE db11 2330+8 R_MMIX_PUSHJ_STUBBABLE dc11 234R.* \[\.text\.a12\]: 235O.* 2360+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.a12 2370+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.a12\+0x0+4 238R.* \[\.text\.b12\]: 239O.* 2400+40004 R_MMIX_PUSHJ_STUBBABLE \.text\.b12 2410+40008 R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+4 2420+4000c R_MMIX_PUSHJ_STUBBABLE \.text\.b12\+0x0+8 243R.* \[\.text\.c12\]: 244O.* 2450+ R_MMIX_PUSHJ_STUBBABLE ca12 2460+4 R_MMIX_PUSHJ_STUBBABLE cb12 247R.* \[\.text\.d12\]: 248O.* 2490+ R_MMIX_PUSHJ_STUBBABLE da12 2500+4 R_MMIX_PUSHJ_STUBBABLE db12 2510+8 R_MMIX_PUSHJ_STUBBABLE dc12 252