.text
	.type _start,@function
_start:

// Fixed and stacked integer registers.
	{ .mii; mov r1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r3 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r4 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r5 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r6 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r7 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r8 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r9 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r10 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r11 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r12 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r13 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r14 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r15 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r16 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r17 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r18 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r19 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r20 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r21 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r22 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r23 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r24 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r25 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r26 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r27 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r28 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r29 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r30 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r31 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r32 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r33 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r34 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r35 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r36 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r37 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r38 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r39 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r40 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r41 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r42 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r43 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r44 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r45 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r46 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r47 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r48 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r49 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r50 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r51 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r52 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r53 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r54 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r55 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r56 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r57 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r58 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r59 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r60 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r61 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r62 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r63 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r64 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r65 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r66 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r67 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r68 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r69 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r70 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r71 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r72 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r73 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r74 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r75 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r76 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r77 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r78 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r79 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r80 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r81 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r82 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r83 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r84 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r85 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r86 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r87 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r88 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r89 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r90 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r91 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r92 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r93 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r94 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r95 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r96 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r97 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r98 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r99 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r100 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r101 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r102 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r103 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r104 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r105 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r106 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r107 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r108 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r109 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r110 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r111 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r112 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r113 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r114 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r115 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r116 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r117 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r118 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r119 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r120 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r121 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r122 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r123 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r124 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r125 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r126 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov r127 = r0; nop.i 0; nop.i 0;; }

// Alternate names for input registers
	.regstk 96, 0, 0, 0
	{ .mii; mov in0 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in3 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in4 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in5 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in6 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in7 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in8 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in9 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in10 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in11 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in12 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in13 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in14 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in15 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in16 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in17 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in18 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in19 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in20 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in21 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in22 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in23 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in24 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in25 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in26 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in27 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in28 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in29 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in30 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in31 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in32 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in33 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in34 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in35 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in36 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in37 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in38 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in39 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in40 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in41 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in42 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in43 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in44 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in45 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in46 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in47 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in48 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in49 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in50 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in51 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in52 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in53 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in54 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in55 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in56 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in57 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in58 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in59 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in60 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in61 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in62 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in63 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in64 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in65 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in66 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in67 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in68 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in69 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in70 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in71 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in72 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in73 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in74 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in75 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in76 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in77 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in78 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in79 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in80 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in81 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in82 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in83 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in84 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in85 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in86 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in87 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in88 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in89 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in90 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in91 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in92 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in93 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in94 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov in95 = r0; nop.i 0; nop.i 0;; }

// Alternate names for output registers
	.regstk 0, 0, 96, 0
	{ .mii; mov out0 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out3 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out4 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out5 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out6 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out7 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out8 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out9 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out10 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out11 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out12 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out13 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out14 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out15 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out16 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out17 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out18 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out19 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out20 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out21 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out22 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out23 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out24 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out25 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out26 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out27 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out28 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out29 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out30 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out31 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out32 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out33 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out34 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out35 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out36 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out37 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out38 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out39 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out40 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out41 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out42 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out43 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out44 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out45 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out46 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out47 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out48 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out49 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out50 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out51 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out52 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out53 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out54 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out55 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out56 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out57 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out58 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out59 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out60 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out61 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out62 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out63 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out64 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out65 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out66 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out67 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out68 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out69 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out70 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out71 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out72 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out73 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out74 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out75 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out76 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out77 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out78 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out79 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out80 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out81 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out82 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out83 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out84 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out85 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out86 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out87 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out88 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out89 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out90 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out91 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out92 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out93 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out94 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov out95 = r0; nop.i 0; nop.i 0;; }

// Alternate names for local registers
	.regstk 0, 96, 0, 0
	{ .mii; mov loc0 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc3 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc4 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc5 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc6 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc7 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc8 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc9 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc10 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc11 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc12 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc13 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc14 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc15 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc16 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc17 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc18 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc19 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc20 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc21 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc22 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc23 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc24 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc25 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc26 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc27 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc28 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc29 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc30 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc31 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc32 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc33 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc34 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc35 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc36 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc37 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc38 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc39 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc40 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc41 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc42 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc43 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc44 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc45 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc46 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc47 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc48 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc49 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc50 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc51 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc52 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc53 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc54 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc55 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc56 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc57 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc58 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc59 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc60 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc61 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc62 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc63 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc64 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc65 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc66 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc67 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc68 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc69 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc70 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc71 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc72 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc73 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc74 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc75 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc76 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc77 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc78 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc79 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc80 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc81 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc82 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc83 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc84 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc85 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc86 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc87 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc88 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc89 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc90 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc91 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc92 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc93 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc94 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov loc95 = r0; nop.i 0; nop.i 0;; }

// Return value registers
	{ .mii; mov ret0 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov ret1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov ret2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; mov ret3 = r0; nop.i 0; nop.i 0;; }

	{ .mii;
	mov gp = r0
	mov sp = r0
	mov tp = r0;; }

// Floating point registers
	{ .mfi; mov f2 = f0 ;; }
	{ .mfi; mov f3 = f0 ;; }
	{ .mfi; mov f4 = f0 ;; }
	{ .mfi; mov f5 = f0 ;; }
	{ .mfi; mov f6 = f0 ;; }
	{ .mfi; mov f7 = f0 ;; }
	{ .mfi; mov f8 = f0 ;; }
	{ .mfi; mov f9 = f0 ;; }
	{ .mfi; mov f10 = f0 ;; }
	{ .mfi; mov f11 = f0 ;; }
	{ .mfi; mov f12 = f0 ;; }
	{ .mfi; mov f13 = f0 ;; }
	{ .mfi; mov f14 = f0 ;; }
	{ .mfi; mov f15 = f0 ;; }
	{ .mfi; mov f16 = f0 ;; }
	{ .mfi; mov f17 = f0 ;; }
	{ .mfi; mov f18 = f0 ;; }
	{ .mfi; mov f19 = f0 ;; }
	{ .mfi; mov f20 = f0 ;; }
	{ .mfi; mov f21 = f0 ;; }
	{ .mfi; mov f22 = f0 ;; }
	{ .mfi; mov f23 = f0 ;; }
	{ .mfi; mov f24 = f0 ;; }
	{ .mfi; mov f25 = f0 ;; }
	{ .mfi; mov f26 = f0 ;; }
	{ .mfi; mov f27 = f0 ;; }
	{ .mfi; mov f28 = f0 ;; }
	{ .mfi; mov f29 = f0 ;; }
	{ .mfi; mov f30 = f0 ;; }
	{ .mfi; mov f31 = f0 ;; }
	{ .mfi; mov f32 = f0 ;; }
	{ .mfi; mov f33 = f0 ;; }
	{ .mfi; mov f34 = f0 ;; }
	{ .mfi; mov f35 = f0 ;; }
	{ .mfi; mov f36 = f0 ;; }
	{ .mfi; mov f37 = f0 ;; }
	{ .mfi; mov f38 = f0 ;; }
	{ .mfi; mov f39 = f0 ;; }
	{ .mfi; mov f40 = f0 ;; }
	{ .mfi; mov f41 = f0 ;; }
	{ .mfi; mov f42 = f0 ;; }
	{ .mfi; mov f43 = f0 ;; }
	{ .mfi; mov f44 = f0 ;; }
	{ .mfi; mov f45 = f0 ;; }
	{ .mfi; mov f46 = f0 ;; }
	{ .mfi; mov f47 = f0 ;; }
	{ .mfi; mov f48 = f0 ;; }
	{ .mfi; mov f49 = f0 ;; }
	{ .mfi; mov f50 = f0 ;; }
	{ .mfi; mov f51 = f0 ;; }
	{ .mfi; mov f52 = f0 ;; }
	{ .mfi; mov f53 = f0 ;; }
	{ .mfi; mov f54 = f0 ;; }
	{ .mfi; mov f55 = f0 ;; }
	{ .mfi; mov f56 = f0 ;; }
	{ .mfi; mov f57 = f0 ;; }
	{ .mfi; mov f58 = f0 ;; }
	{ .mfi; mov f59 = f0 ;; }
	{ .mfi; mov f60 = f0 ;; }
	{ .mfi; mov f61 = f0 ;; }
	{ .mfi; mov f62 = f0 ;; }
	{ .mfi; mov f63 = f0 ;; }
	{ .mfi; mov f64 = f0 ;; }
	{ .mfi; mov f65 = f0 ;; }
	{ .mfi; mov f66 = f0 ;; }
	{ .mfi; mov f67 = f0 ;; }
	{ .mfi; mov f68 = f0 ;; }
	{ .mfi; mov f69 = f0 ;; }
	{ .mfi; mov f70 = f0 ;; }
	{ .mfi; mov f71 = f0 ;; }
	{ .mfi; mov f72 = f0 ;; }
	{ .mfi; mov f73 = f0 ;; }
	{ .mfi; mov f74 = f0 ;; }
	{ .mfi; mov f75 = f0 ;; }
	{ .mfi; mov f76 = f0 ;; }
	{ .mfi; mov f77 = f0 ;; }
	{ .mfi; mov f78 = f0 ;; }
	{ .mfi; mov f79 = f0 ;; }
	{ .mfi; mov f80 = f0 ;; }
	{ .mfi; mov f81 = f0 ;; }
	{ .mfi; mov f82 = f0 ;; }
	{ .mfi; mov f83 = f0 ;; }
	{ .mfi; mov f84 = f0 ;; }
	{ .mfi; mov f85 = f0 ;; }
	{ .mfi; mov f86 = f0 ;; }
	{ .mfi; mov f87 = f0 ;; }
	{ .mfi; mov f88 = f0 ;; }
	{ .mfi; mov f89 = f0 ;; }
	{ .mfi; mov f90 = f0 ;; }
	{ .mfi; mov f91 = f0 ;; }
	{ .mfi; mov f92 = f0 ;; }
	{ .mfi; mov f93 = f0 ;; }
	{ .mfi; mov f94 = f0 ;; }
	{ .mfi; mov f95 = f0 ;; }
	{ .mfi; mov f96 = f0 ;; }
	{ .mfi; mov f97 = f0 ;; }
	{ .mfi; mov f98 = f0 ;; }
	{ .mfi; mov f99 = f0 ;; }
	{ .mfi; mov f100 = f0 ;; }
	{ .mfi; mov f101 = f0 ;; }
	{ .mfi; mov f102 = f0 ;; }
	{ .mfi; mov f103 = f0 ;; }
	{ .mfi; mov f104 = f0 ;; }
	{ .mfi; mov f105 = f0 ;; }
	{ .mfi; mov f106 = f0 ;; }
	{ .mfi; mov f107 = f0 ;; }
	{ .mfi; mov f108 = f0 ;; }
	{ .mfi; mov f109 = f0 ;; }
	{ .mfi; mov f110 = f0 ;; }
	{ .mfi; mov f111 = f0 ;; }
	{ .mfi; mov f112 = f0 ;; }
	{ .mfi; mov f113 = f0 ;; }
	{ .mfi; mov f114 = f0 ;; }
	{ .mfi; mov f115 = f0 ;; }
	{ .mfi; mov f116 = f0 ;; }
	{ .mfi; mov f117 = f0 ;; }
	{ .mfi; mov f118 = f0 ;; }
	{ .mfi; mov f119 = f0 ;; }
	{ .mfi; mov f120 = f0 ;; }
	{ .mfi; mov f121 = f0 ;; }
	{ .mfi; mov f122 = f0 ;; }
	{ .mfi; mov f123 = f0 ;; }
	{ .mfi; mov f124 = f0 ;; }
	{ .mfi; mov f125 = f0 ;; }
	{ .mfi; mov f126 = f0 ;; }
	{ .mfi; mov f127 = f0 ;; }

// Floating point argument registers
	{ .mfi; mov farg0 = f1 ;; }
	{ .mfi; mov farg1 = f1 ;; }
	{ .mfi; mov farg2 = f1 ;; }
	{ .mfi; mov farg3 = f1 ;; }
	{ .mfi; mov farg4 = f1 ;; }
	{ .mfi; mov farg5 = f1 ;; }
	{ .mfi; mov farg6 = f1 ;; }
	{ .mfi; mov farg7 = f1 ;; }

// Floating point return value registers
	{ .mfi; mov fret0 = f1 ;; }
	{ .mfi; mov fret1 = f1 ;; }
	{ .mfi; mov fret2 = f1 ;; }
	{ .mfi; mov fret3 = f1 ;; }
	{ .mfi; mov fret4 = f1 ;; }
	{ .mfi; mov fret5 = f1 ;; }
	{ .mfi; mov fret6 = f1 ;; }
	{ .mfi; mov fret7 = f1 ;; }

// Predicate registers
	{ .mii; (p0)	mov r1 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p1)	mov r2 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p2)	mov r3 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p3)	mov r4 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p4)	mov r5 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p5)	mov r6 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p6)	mov r7 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p7)	mov r8 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p8)	mov r9 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p9)	mov r10 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p10)	mov r11 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p11)	mov r12 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p12)	mov r13 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p13)	mov r14 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p14)	mov r15 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p15)	mov r16 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p16)	mov r17 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p17)	mov r18 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p18)	mov r19 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p19)	mov r20 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p20)	mov r21 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p21)	mov r22 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p22)	mov r23 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p23)	mov r24 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p24)	mov r25 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p25)	mov r26 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p26)	mov r27 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p27)	mov r28 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p28)	mov r29 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p29)	mov r30 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p30)	mov r31 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p31)	mov r32 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p32)	mov r33 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p33)	mov r34 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p34)	mov r35 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p35)	mov r36 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p36)	mov r37 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p37)	mov r38 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p38)	mov r39 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p39)	mov r40 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p40)	mov r41 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p41)	mov r42 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p42)	mov r43 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p43)	mov r44 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p44)	mov r45 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p45)	mov r46 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p46)	mov r47 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p47)	mov r48 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p48)	mov r49 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p49)	mov r50 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p50)	mov r51 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p51)	mov r52 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p52)	mov r53 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p53)	mov r54 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p54)	mov r55 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p55)	mov r56 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p56)	mov r57 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p57)	mov r58 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p58)	mov r59 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p59)	mov r60 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p60)	mov r61 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p61)	mov r62 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p62)	mov r63 = r0; nop.i 0; nop.i 0;; }
	{ .mii; (p63)	mov r64 = r0; nop.i 0; nop.i 0;; }

// Predicates as a unit
	{ .mmi; nop.m 0; mov r1 = pr ;; }
//	mov r2 = pr.rot

// Branch registers.
	{ .mmi; mov b0 = r0;; }
	{ .mmi; mov b1 = r0;; }
	{ .mmi; mov b2 = r0;; }
	{ .mmi; mov b3 = r0;; }
	{ .mmi; mov b4 = r0;; }
	{ .mmi; mov b5 = r0;; }
	{ .mmi; mov b6 = r0;; }
	{ .mmi; mov b7 = r0;; }

	{ .mmi; mov rp = r0;; }

// Application registers
	{ .mmi; nop.m 0; mov r1 = ar0 ;; }
	{ .mmi; nop.m 0; mov r1 = ar1 ;; }
	{ .mmi; nop.m 0; mov r1 = ar2 ;; }
	{ .mmi; nop.m 0; mov r1 = ar3 ;; }
	{ .mmi; nop.m 0; mov r1 = ar4 ;; }
	{ .mmi; nop.m 0; mov r1 = ar5 ;; }
	{ .mmi; nop.m 0; mov r1 = ar6 ;; }
	{ .mmi; nop.m 0; mov r1 = ar7 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar8 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar9 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar10 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar11 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar12 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar13 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar14 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar15 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar16 ;; }
	{ .mmi; nop.m 0; mov r1 = ar17 ;; }
	{ .mmi; nop.m 0; mov r1 = ar18 ;; }
	{ .mmi; nop.m 0; mov r1 = ar19 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar20 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar21 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar22 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar23 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar24 ;; }
	{ .mmi; nop.m 0; mov r1 = ar25 ;; }
	{ .mmi; nop.m 0; mov r1 = ar26 ;; }
	{ .mmi; nop.m 0; mov r1 = ar27 ;; }
	{ .mmi; nop.m 0; mov r1 = ar28 ;; }
	{ .mmi; nop.m 0; mov r1 = ar29 ;; }
	{ .mmi; nop.m 0; mov r1 = ar30 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar31 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar32 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar33 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar34 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar35 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar36 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar37 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar38 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar39 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar40 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar41 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar42 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar43 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar44 ;; }
	{ .mmi; nop.m 0; mov r1 = ar45 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar46 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar47 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar48 ;; }
	{ .mmi; nop.m 0; mov r1 = ar49 ;; }
	{ .mmi; nop.m 0; mov r1 = ar50 ;; }
	{ .mmi; nop.m 0; mov r1 = ar51 ;; }
	{ .mmi; nop.m 0; mov r1 = ar52 ;; }
	{ .mmi; nop.m 0; mov r1 = ar53 ;; }
	{ .mmi; nop.m 0; mov r1 = ar54 ;; }
	{ .mmi; nop.m 0; mov r1 = ar55 ;; }
	{ .mmi; nop.m 0; mov r1 = ar56 ;; }
	{ .mmi; nop.m 0; mov r1 = ar57 ;; }
	{ .mmi; nop.m 0; mov r1 = ar58 ;; }
	{ .mmi; nop.m 0; mov r1 = ar59 ;; }
	{ .mmi; nop.m 0; mov r1 = ar60 ;; }
	{ .mmi; nop.m 0; mov r1 = ar61 ;; }
	{ .mmi; nop.m 0; mov r1 = ar62 ;; }
	{ .mmi; nop.m 0; mov r1 = ar63 ;; }
	{ .mmi; nop.m 0; mov r1 = ar64 ;; }
	{ .mmi; nop.m 0; mov r1 = ar65 ;; }
	{ .mmi; nop.m 0; mov r1 = ar66 ;; }
//	{ .mmi; nop.m 0; mov r1 = ar67 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar68 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar69 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar70 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar71 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar72 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar73 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar74 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar75 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar76 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar77 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar78 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar79 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar80 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar81 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar82 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar83 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar84 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar85 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar86 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar87 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar88 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar89 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar90 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar91 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar92 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar93 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar94 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar95 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar96 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar97 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar98 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar99 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar100 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar101 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar102 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar103 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar104 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar105 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar106 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar107 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar108 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar109 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar110 ;; }		// reserved
//	{ .mmi; nop.m 0; mov r1 = ar111 ;; }		// reserved
	{ .mmi; nop.m 0; mov r1 = ar112 ;; }
	{ .mmi; nop.m 0; mov r1 = ar113 ;; }
	{ .mmi; nop.m 0; mov r1 = ar114 ;; }
	{ .mmi; nop.m 0; mov r1 = ar115 ;; }
	{ .mmi; nop.m 0; mov r1 = ar116 ;; }
	{ .mmi; nop.m 0; mov r1 = ar117 ;; }
	{ .mmi; nop.m 0; mov r1 = ar118 ;; }
	{ .mmi; nop.m 0; mov r1 = ar119 ;; }
	{ .mmi; nop.m 0; mov r1 = ar120 ;; }
	{ .mmi; nop.m 0; mov r1 = ar121 ;; }
	{ .mmi; nop.m 0; mov r1 = ar122 ;; }
	{ .mmi; nop.m 0; mov r1 = ar123 ;; }
	{ .mmi; nop.m 0; mov r1 = ar124 ;; }
	{ .mmi; nop.m 0; mov r1 = ar125 ;; }
	{ .mmi; nop.m 0; mov r1 = ar126 ;; }
	{ .mmi; nop.m 0; mov r1 = ar127 ;; }

// Application registers by name
	{ .mmi; nop.m 0; mov r1 = ar.k0 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k1 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k2 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k3 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k4 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k5 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k6 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.k7 ;;}
	{ .mmi; nop.m 0; mov r1 = ar.rsc ;; }
	{ .mmi; nop.m 0; mov r1 = ar.bsp ;; }
	{ .mmi; nop.m 0; mov r1 = ar.bspstore ;; }
	{ .mmi; nop.m 0; mov r1 = ar.rnat ;; }
	{ .mmi; nop.m 0; mov r1 = ar.ccv ;; }
	{ .mmi; nop.m 0; mov r1 = ar.unat ;; }
	{ .mmi; nop.m 0; mov r1 = ar.fpsr ;; }
	{ .mmi; nop.m 0; mov r1 = ar.itc ;; }
	{ .mmi; nop.m 0; mov r1 = ar.ruc ;; }
	{ .mmi; nop.m 0; mov r1 = ar.pfs ;; }
	{ .mmi; nop.m 0; mov r1 = ar.lc ;; }
	{ .mmi; nop.m 0; mov r1 = ar.ec ;; }

// Control registers
	{ .mfb; mov r1 = cr0 ;; }
	{ .mfb; mov r1 = cr1 ;; }
	{ .mfb; mov r1 = cr2 ;; }
//	{ .mfb; mov r1 = cr3 ;; }		// reserved
//	{ .mfb; mov r1 = cr4 ;; }		// reserved
//	{ .mfb; mov r1 = cr5 ;; }		// reserved
//	{ .mfb; mov r1 = cr6 ;; }		// reserved
//	{ .mfb; mov r1 = cr7 ;; }		// reserved
	{ .mfb; mov r1 = cr8 ;; }
	{ .mfb; mov r1 = cr9 ;; }
//	{ .mfb; mov r1 = cr10 ;; }		// reserved
//	{ .mfb; mov r1 = cr11 ;; }		// reserved
//	{ .mfb; mov r1 = cr12 ;; }		// reserved
//	{ .mfb; mov r1 = cr13 ;; }		// reserved
//	{ .mfb; mov r1 = cr14 ;; }		// reserved
//	{ .mfb; mov r1 = cr15 ;; }		// reserved
	{ .mfb; mov r1 = cr16 ;; }
	{ .mfb; mov r1 = cr17 ;; }
//	{ .mfb; mov r1 = cr18 ;; }		// reserved
	{ .mfb; mov r1 = cr19 ;; }
	{ .mfb; mov r1 = cr20 ;; }
	{ .mfb; mov r1 = cr21 ;; }
	{ .mfb; mov r1 = cr22 ;; }
	{ .mfb; mov r1 = cr23 ;; }
	{ .mfb; mov r1 = cr24 ;; }
	{ .mfb; mov r1 = cr25 ;; }
//	{ .mfb; mov r1 = cr26 ;; }		// reserved
//	{ .mfb; mov r1 = cr27 ;; }		// reserved
//	{ .mfb; mov r1 = cr28 ;; }		// reserved
//	{ .mfb; mov r1 = cr29 ;; }		// reserved
//	{ .mfb; mov r1 = cr30 ;; }		// reserved
//	{ .mfb; mov r1 = cr31 ;; }		// reserved
//	{ .mfb; mov r1 = cr32 ;; }		// reserved
//	{ .mfb; mov r1 = cr33 ;; }		// reserved
//	{ .mfb; mov r1 = cr34 ;; }		// reserved
//	{ .mfb; mov r1 = cr35 ;; }		// reserved
//	{ .mfb; mov r1 = cr36 ;; }		// reserved
//	{ .mfb; mov r1 = cr37 ;; }		// reserved
//	{ .mfb; mov r1 = cr38 ;; }		// reserved
//	{ .mfb; mov r1 = cr39 ;; }		// reserved
//	{ .mfb; mov r1 = cr40 ;; }		// reserved
//	{ .mfb; mov r1 = cr41 ;; }		// reserved
//	{ .mfb; mov r1 = cr42 ;; }		// reserved
//	{ .mfb; mov r1 = cr43 ;; }		// reserved
//	{ .mfb; mov r1 = cr44 ;; }		// reserved
//	{ .mfb; mov r1 = cr45 ;; }		// reserved
//	{ .mfb; mov r1 = cr46 ;; }		// reserved
//	{ .mfb; mov r1 = cr47 ;; }		// reserved
//	{ .mfb; mov r1 = cr48 ;; }		// reserved
//	{ .mfb; mov r1 = cr49 ;; }		// reserved
//	{ .mfb; mov r1 = cr50 ;; }		// reserved
//	{ .mfb; mov r1 = cr51 ;; }		// reserved
//	{ .mfb; mov r1 = cr52 ;; }		// reserved
//	{ .mfb; mov r1 = cr53 ;; }		// reserved
//	{ .mfb; mov r1 = cr54 ;; }		// reserved
//	{ .mfb; mov r1 = cr55 ;; }		// reserved
//	{ .mfb; mov r1 = cr56 ;; }		// reserved
//	{ .mfb; mov r1 = cr57 ;; }		// reserved
//	{ .mfb; mov r1 = cr58 ;; }		// reserved
//	{ .mfb; mov r1 = cr59 ;; }		// reserved
//	{ .mfb; mov r1 = cr60 ;; }		// reserved
//	{ .mfb; mov r1 = cr61 ;; }		// reserved
//	{ .mfb; mov r1 = cr62 ;; }		// reserved
//	{ .mfb; mov r1 = cr63 ;; }		// reserved
	{ .mfb; mov r1 = cr64 ;; }
	{ .mfb; mov r1 = cr65 ;; }
	{ .mfb; mov r1 = cr66 ;; }
	{ .mfb; mov r1 = cr67 ;; }
	{ .mfb; mov r1 = cr68 ;; }
	{ .mfb; mov r1 = cr69 ;; }
	{ .mfb; mov r1 = cr70 ;; }
	{ .mfb; mov r1 = cr71 ;; }
	{ .mfb; mov r1 = cr72 ;; }
	{ .mfb; mov r1 = cr73 ;; }
	{ .mfb; mov r1 = cr74 ;; }
//	{ .mfb; mov r1 = cr75 ;; }		// reserved
//	{ .mfb; mov r1 = cr76 ;; }		// reserved
//	{ .mfb; mov r1 = cr77 ;; }		// reserved
//	{ .mfb; mov r1 = cr78 ;; }		// reserved
//	{ .mfb; mov r1 = cr79 ;; }		// reserved
	{ .mfb; mov r1 = cr80 ;; }
	{ .mfb; mov r1 = cr81 ;; }
//	{ .mfb; mov r1 = cr82 ;; }		// reserved
//	{ .mfb; mov r1 = cr83 ;; }		// reserved
//	{ .mfb; mov r1 = cr84 ;; }		// reserved
//	{ .mfb; mov r1 = cr85 ;; }		// reserved
//	{ .mfb; mov r1 = cr86 ;; }		// reserved
//	{ .mfb; mov r1 = cr87 ;; }		// reserved
//	{ .mfb; mov r1 = cr88 ;; }		// reserved
//	{ .mfb; mov r1 = cr89 ;; }		// reserved
//	{ .mfb; mov r1 = cr90 ;; }		// reserved
//	{ .mfb; mov r1 = cr91 ;; }		// reserved
//	{ .mfb; mov r1 = cr92 ;; }		// reserved
//	{ .mfb; mov r1 = cr93 ;; }		// reserved
//	{ .mfb; mov r1 = cr94 ;; }		// reserved
//	{ .mfb; mov r1 = cr95 ;; }		// reserved
//	{ .mfb; mov r1 = cr96 ;; }		// reserved
//	{ .mfb; mov r1 = cr97 ;; }		// reserved
//	{ .mfb; mov r1 = cr98 ;; }		// reserved
//	{ .mfb; mov r1 = cr99 ;; }		// reserved
//	{ .mfb; mov r1 = cr100 ;; }		// reserved
//	{ .mfb; mov r1 = cr101 ;; }		// reserved
//	{ .mfb; mov r1 = cr102 ;; }		// reserved
//	{ .mfb; mov r1 = cr103 ;; }		// reserved
//	{ .mfb; mov r1 = cr104 ;; }		// reserved
//	{ .mfb; mov r1 = cr105 ;; }		// reserved
//	{ .mfb; mov r1 = cr106 ;; }		// reserved
//	{ .mfb; mov r1 = cr107 ;; }		// reserved
//	{ .mfb; mov r1 = cr108 ;; }		// reserved
//	{ .mfb; mov r1 = cr109 ;; }		// reserved
//	{ .mfb; mov r1 = cr110 ;; }		// reserved
//	{ .mfb; mov r1 = cr111 ;; }		// reserved
//	{ .mfb; mov r1 = cr112 ;; }		// reserved
//	{ .mfb; mov r1 = cr113 ;; }		// reserved
//	{ .mfb; mov r1 = cr114 ;; }		// reserved
//	{ .mfb; mov r1 = cr115 ;; }		// reserved
//	{ .mfb; mov r1 = cr116 ;; }		// reserved
//	{ .mfb; mov r1 = cr117 ;; }		// reserved
//	{ .mfb; mov r1 = cr118 ;; }		// reserved
//	{ .mfb; mov r1 = cr119 ;; }		// reserved
//	{ .mfb; mov r1 = cr120 ;; }		// reserved
//	{ .mfb; mov r1 = cr121 ;; }		// reserved
//	{ .mfb; mov r1 = cr122 ;; }		// reserved
//	{ .mfb; mov r1 = cr123 ;; }		// reserved
//	{ .mfb; mov r1 = cr124 ;; }		// reserved
//	{ .mfb; mov r1 = cr125 ;; }		// reserved
//	{ .mfb; mov r1 = cr126 ;; }		// reserved
//	{ .mfb; mov r1 = cr127 ;; }		// reserved

// Control registers by name
	{ .mfb; mov r1 = cr.dcr ;; }
	{ .mfb; mov r1 = cr.itm ;; }
	{ .mfb; mov r1 = cr.iva ;; }
	{ .mfb; mov r1 = cr.pta ;; }
	{ .mfb; mov r1 = cr.ipsr ;; }
	{ .mfb; mov r1 = cr.isr ;; }
	{ .mfb; mov r1 = cr.iip ;; }
	{ .mfb; mov r1 = cr.iipa ;; }
	{ .mfb; mov r1 = cr.ifs ;; }
	{ .mfb; mov r1 = cr.iim ;; }
	{ .mfb; mov r1 = cr.iha ;; }
	{ .mfb; mov r1 = cr.iib0 ;; }
	{ .mfb; mov r1 = cr.iib1 ;; }
	{ .mfb; mov r1 = cr.lid ;; }
	{ .mfb; mov r1 = cr.ivr ;; }
	{ .mfb; mov r1 = cr.tpr ;; }
	{ .mfb; mov r1 = cr.eoi ;; }
	{ .mfb; mov r1 = cr.irr0 ;; }
	{ .mfb; mov r1 = cr.irr1 ;; }
	{ .mfb; mov r1 = cr.irr2 ;; }
	{ .mfb; mov r1 = cr.irr3 ;; }
	{ .mfb; mov r1 = cr.itv ;; }
	{ .mfb; mov r1 = cr.pmv ;; }
	{ .mfb; mov r1 = cr.lrr0 ;; }
	{ .mfb; mov r1 = cr.lrr1 ;; }
	{ .mfb; mov r1 = cr.cmcv ;; }

// Other registers
	{ .mfb; mov r1 = psr ;; }
//	{ .mfb; mov r1 = psr.l ;; }
	{ .mfb; mov r1 = psr.um ;; }
	{ .mmi; mov r1 = ip ;; }

// Indirect register files
	{ .mmi
	mov r1 = pmc[r3]
	mov r2 = pmc[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = pmd[r3]
	mov r2 = pmd[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = pkr[r3]
	mov r2 = pkr[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = rr[r3]
	mov r2 = rr[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = ibr[r3]
	mov r2 = ibr[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = dbr[r3]
	mov r2 = dbr[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = CPUID[r3]
	mov r2 = CPUID[r4]
	nop.i 0;; }
	{ .mmi
	mov r1 = cpuid[r3]
	mov r2 = cpuid[r4]
	nop.i 0;; }
