Artifact
92c49a7d52056c2f2bc7f16ae2e0f078f484eb8c:
0000: 3b 20 54 72 61 6d 70 6f 6c 69 6e 65 20 66 6f 72 ; Trampoline for
0010: 20 68 70 70 61 20 43 50 55 0a 0a 3b 0a 3b 20 43 hppa CPU..;.; C
0020: 6f 70 79 72 69 67 68 74 20 31 39 39 37 20 42 72 opyright 1997 Br
0030: 75 6e 6f 20 48 61 69 62 6c 65 2c 20 3c 62 72 75 uno Haible, <bru
0040: 6e 6f 40 63 6c 69 73 70 2e 6f 72 67 3e 0a 3b 0a no@clisp.org>.;.
0050: 3b 20 54 68 69 73 20 69 73 20 66 72 65 65 20 73 ; This is free s
0060: 6f 66 74 77 61 72 65 20 64 69 73 74 72 69 62 75 oftware distribu
0070: 74 65 64 20 75 6e 64 65 72 20 74 68 65 20 47 4e ted under the GN
0080: 55 20 47 65 6e 65 72 61 6c 20 50 75 62 6c 69 63 U General Public
0090: 20 4c 69 63 65 6e 63 65 0a 3b 20 64 65 73 63 72 Licence.; descr
00a0: 69 62 65 64 20 69 6e 20 74 68 65 20 66 69 6c 65 ibed in the file
00b0: 20 43 4f 50 59 49 4e 47 2e 20 43 6f 6e 74 61 63 COPYING. Contac
00c0: 74 20 74 68 65 20 61 75 74 68 6f 72 20 69 66 20 t the author if
00d0: 79 6f 75 20 64 6f 6e 27 74 20 68 61 76 65 20 74 you don't have t
00e0: 68 69 73 0a 3b 20 6f 72 20 63 61 6e 27 74 20 6c his.; or can't l
00f0: 69 76 65 20 77 69 74 68 20 69 74 2e 20 54 68 65 ive with it. The
0100: 72 65 20 69 73 20 41 42 53 4f 4c 55 54 45 4c 59 re is ABSOLUTELY
0110: 20 4e 4f 20 57 41 52 52 41 4e 54 59 2c 20 65 78 NO WARRANTY, ex
0120: 70 6c 69 63 69 74 20 6f 72 20 69 6d 70 6c 69 65 plicit or implie
0130: 64 2c 0a 3b 20 6f 6e 20 74 68 69 73 20 73 6f 66 d,.; on this sof
0140: 74 77 61 72 65 2e 0a 3b 0a 0a 09 2e 63 6f 64 65 tware..;....code
0150: 0a 09 2e 49 4d 50 4f 52 54 20 24 67 6c 6f 62 61 ...IMPORT $globa
0160: 6c 24 2c 44 41 54 41 0a 09 2e 49 4d 50 4f 52 54 l$,DATA...IMPORT
0170: 20 24 24 64 79 6e 63 61 6c 6c 2c 4d 49 4c 4c 49 $$dyncall,MILLI
0180: 43 4f 44 45 0a 09 2e 63 6f 64 65 0a 0a 09 2e 61 CODE...code....a
0190: 6c 69 67 6e 20 34 0a 09 2e 45 58 50 4f 52 54 20 lign 4...EXPORT
01a0: 74 72 61 6d 70 2c 45 4e 54 52 59 2c 50 52 49 56 tramp,ENTRY,PRIV
01b0: 5f 4c 45 56 3d 33 2c 41 52 47 57 30 3d 47 52 2c _LEV=3,ARGW0=GR,
01c0: 41 52 47 57 31 3d 47 52 0a 09 2e 6c 61 62 65 6c ARGW1=GR...label
01d0: 20 74 72 61 6d 70 0a 09 2e 50 52 4f 43 0a 09 2e tramp...PROC...
01e0: 43 41 4c 4c 49 4e 46 4f 20 46 52 41 4d 45 3d 30 CALLINFO FRAME=0
01f0: 2c 4e 4f 5f 43 41 4c 4c 53 0a 09 2e 45 4e 54 52 ,NO_CALLS...ENTR
0200: 59 0a 3b 20 54 68 65 20 63 6c 6f 73 75 72 65 20 Y.; The closure
0210: 70 6f 69 6e 74 65 72 20 69 73 20 61 6c 72 65 61 pointer is alrea
0220: 64 79 20 69 6e 20 72 65 67 69 73 74 65 72 20 25 dy in register %
0230: 72 31 39 2e 0a 3b 20 4d 6f 76 65 20 3c 76 61 72 r19..; Move <var
0240: 69 61 62 6c 65 3e 20 69 6e 74 6f 20 72 65 67 69 iable> into regi
0250: 73 74 65 72 20 25 72 32 30 2e 0a 09 6c 64 77 20 ster %r20...ldw
0260: 30 28 30 2c 25 72 31 39 29 2c 25 72 32 30 0a 3b 0(0,%r19),%r20.;
0270: 20 4d 6f 76 65 20 3c 64 61 74 61 3e 20 69 6e 74 Move <data> int
0280: 6f 20 72 65 67 69 73 74 65 72 20 25 72 32 32 0a o register %r22.
0290: 09 6c 64 77 20 34 28 30 2c 25 72 31 39 29 2c 25 .ldw 4(0,%r19),%
02a0: 72 32 32 0a 3b 20 4d 6f 76 65 20 3c 61 64 64 72 r22.; Move <addr
02b0: 65 73 73 3e 20 69 6e 74 6f 20 72 65 67 69 73 74 ess> into regist
02c0: 65 72 20 25 72 32 31 2e 0a 09 6c 64 77 20 38 28 er %r21...ldw 8(
02d0: 30 2c 25 72 31 39 29 2c 25 72 32 31 0a 3b 20 53 0,%r19),%r21.; S
02e0: 74 6f 72 65 20 3c 64 61 74 61 3e 20 69 6e 74 6f tore <data> into
02f0: 20 3c 76 61 72 69 61 62 6c 65 3e 2e 0a 09 73 74 <variable>...st
0300: 77 20 25 72 32 32 2c 30 28 30 2c 25 72 32 30 29 w %r22,0(0,%r20)
0310: 0a 3b 20 4a 75 6d 70 20 74 6f 20 25 72 32 31 2e .; Jump to %r21.
0320: 0a 09 62 62 2c 3e 3d 2c 6e 20 25 72 32 31 2c 33 ..bb,>=,n %r21,3
0330: 30 2c 74 72 61 6d 70 5f 32 0a 09 64 65 70 69 20 0,tramp_2..depi
0340: 30 2c 33 31 2c 32 2c 25 72 32 31 0a 09 6c 64 77 0,31,2,%r21..ldw
0350: 20 34 28 30 2c 25 72 32 31 29 2c 25 72 31 39 0a 4(0,%r21),%r19.
0360: 09 6c 64 77 20 30 28 30 2c 25 72 32 31 29 2c 25 .ldw 0(0,%r21),%
0370: 72 32 31 0a 09 2e 6c 61 62 65 6c 20 74 72 61 6d r21...label tram
0380: 70 5f 32 0a 09 6c 64 73 69 64 20 28 30 2c 25 72 p_2..ldsid (0,%r
0390: 32 31 29 2c 25 72 31 0a 09 6d 74 73 70 20 25 72 21),%r1..mtsp %r
03a0: 31 2c 25 73 72 30 0a 09 62 65 2c 6e 20 30 28 25 1,%sr0..be,n 0(%
03b0: 73 72 30 2c 25 72 32 31 29 0a 09 6e 6f 70 0a 09 sr0,%r21)..nop..
03c0: 2e 45 58 49 54 0a 09 2e 50 52 4f 43 45 4e 44 0a .EXIT...PROCEND.