|
| 1 | +program test.aleo; |
| 2 | + |
| 3 | +struct Point: |
| 4 | + x as u32; |
| 5 | + y as u32; |
| 6 | + |
| 7 | +struct Color: |
| 8 | + r as u8; |
| 9 | + g as u8; |
| 10 | + b as u8; |
| 11 | + |
| 12 | +struct Entity: |
| 13 | + id as u32; |
| 14 | + health as u32; |
| 15 | + active as boolean; |
| 16 | + |
| 17 | +struct main_0_bundle1: |
| 18 | + field_0 as Color; |
| 19 | + field_1 as Color; |
| 20 | + field_2 as Entity; |
| 21 | + field_3 as Entity; |
| 22 | + field_4 as Entity; |
| 23 | + field_5 as Entity; |
| 24 | + field_6 as Entity; |
| 25 | + field_7 as u32; |
| 26 | + field_8 as u32; |
| 27 | + field_9 as u32; |
| 28 | + field_10 as u32; |
| 29 | + field_11 as u32; |
| 30 | + field_12 as u32; |
| 31 | + field_13 as u32; |
| 32 | + field_14 as u32; |
| 33 | + field_15 as u32; |
| 34 | + |
| 35 | +struct main_0_bundle3: |
| 36 | + field_0 as u32; |
| 37 | + field_1 as [u32; 3u32]; |
| 38 | + field_2 as [u32; 3u32]; |
| 39 | + field_3 as [u32; 3u32]; |
| 40 | + field_4 as u32; |
| 41 | + field_5 as u32; |
| 42 | + field_6 as u32; |
| 43 | + field_7 as u32; |
| 44 | + field_8 as u32; |
| 45 | + field_9 as u32; |
| 46 | + field_10 as u32; |
| 47 | + field_11 as u32; |
| 48 | + field_12 as u32; |
| 49 | + field_13 as u32; |
| 50 | + field_14 as u32; |
| 51 | + field_15 as u32; |
| 52 | + |
| 53 | +struct main_0_bundle5: |
| 54 | + field_0 as u32; |
| 55 | + field_1 as u32; |
| 56 | + field_2 as u32; |
| 57 | + field_3 as u32; |
| 58 | + field_4 as u32; |
| 59 | + field_5 as u32; |
| 60 | + field_6 as u32; |
| 61 | + field_7 as u32; |
| 62 | + |
| 63 | +function main: |
| 64 | + cast 0u32 10u32 into r0 as Point; |
| 65 | + cast 1u32 11u32 into r1 as Point; |
| 66 | + cast 2u32 12u32 into r2 as Point; |
| 67 | + cast 3u32 13u32 into r3 as Point; |
| 68 | + cast 4u32 14u32 into r4 as Point; |
| 69 | + cast 5u32 15u32 into r5 as Point; |
| 70 | + cast 6u32 16u32 into r6 as Point; |
| 71 | + cast 7u32 17u32 into r7 as Point; |
| 72 | + cast 8u32 18u32 into r8 as Point; |
| 73 | + cast 9u32 19u32 into r9 as Point; |
| 74 | + cast 255u8 0u8 0u8 into r10 as Color; |
| 75 | + cast 0u8 255u8 0u8 into r11 as Color; |
| 76 | + cast 0u8 0u8 255u8 into r12 as Color; |
| 77 | + cast 128u8 128u8 0u8 into r13 as Color; |
| 78 | + cast 0u8 128u8 128u8 into r14 as Color; |
| 79 | + cast 100u32 100u32 true into r15 as Entity; |
| 80 | + cast 101u32 80u32 true into r16 as Entity; |
| 81 | + cast 102u32 60u32 false into r17 as Entity; |
| 82 | + cast 103u32 40u32 true into r18 as Entity; |
| 83 | + cast 104u32 20u32 false into r19 as Entity; |
| 84 | + cast 10u32 11u32 12u32 into r20 as [u32; 3u32]; |
| 85 | + cast 13u32 14u32 15u32 into r21 as [u32; 3u32]; |
| 86 | + cast 16u32 17u32 18u32 into r22 as [u32; 3u32]; |
| 87 | + cast r13 r14 r15 r16 r17 r18 r19 0u32 1u32 2u32 3u32 4u32 5u32 6u32 7u32 8u32 into r23 as main_0_bundle1; |
| 88 | + cast 9u32 r20 r21 r22 0u32 1u32 2u32 3u32 4u32 5u32 6u32 7u32 8u32 9u32 10u32 11u32 into r24 as main_0_bundle3; |
| 89 | + cast 12u32 13u32 14u32 15u32 16u32 17u32 18u32 19u32 into r25 as main_0_bundle5; |
| 90 | + async main r0 r1 r2 r3 r4 r5 r6 r7 r8 r9 r10 r11 r12 r23 r24 r25 into r26; |
| 91 | + output r26 as test.aleo/main.future; |
| 92 | + |
| 93 | +finalize main: |
| 94 | + input r0 as Point.public; |
| 95 | + input r1 as Point.public; |
| 96 | + input r2 as Point.public; |
| 97 | + input r3 as Point.public; |
| 98 | + input r4 as Point.public; |
| 99 | + input r5 as Point.public; |
| 100 | + input r6 as Point.public; |
| 101 | + input r7 as Point.public; |
| 102 | + input r8 as Point.public; |
| 103 | + input r9 as Point.public; |
| 104 | + input r10 as Color.public; |
| 105 | + input r11 as Color.public; |
| 106 | + input r12 as Color.public; |
| 107 | + input r13 as main_0_bundle1.public; |
| 108 | + input r14 as main_0_bundle3.public; |
| 109 | + input r15 as main_0_bundle5.public; |
| 110 | + add r0.x r1.x into r16; |
| 111 | + add r16 r2.x into r17; |
| 112 | + add r17 r3.x into r18; |
| 113 | + add r18 r4.x into r19; |
| 114 | + add r19 r5.x into r20; |
| 115 | + add r20 r6.x into r21; |
| 116 | + add r21 r7.x into r22; |
| 117 | + add r22 r8.x into r23; |
| 118 | + add r23 r9.x into r24; |
| 119 | + add r0.y r1.y into r25; |
| 120 | + add r25 r2.y into r26; |
| 121 | + add r26 r3.y into r27; |
| 122 | + add r27 r4.y into r28; |
| 123 | + add r28 r5.y into r29; |
| 124 | + add r29 r6.y into r30; |
| 125 | + add r30 r7.y into r31; |
| 126 | + add r31 r8.y into r32; |
| 127 | + add r32 r9.y into r33; |
| 128 | + cast r10.r into r34 as u32; |
| 129 | + cast r11.r into r35 as u32; |
| 130 | + add r34 r35 into r36; |
| 131 | + cast r12.r into r37 as u32; |
| 132 | + add r36 r37 into r38; |
| 133 | + cast r13.field_0.r into r39 as u32; |
| 134 | + add r38 r39 into r40; |
| 135 | + cast r13.field_1.r into r41 as u32; |
| 136 | + add r40 r41 into r42; |
| 137 | + cast r10.g into r43 as u32; |
| 138 | + cast r11.g into r44 as u32; |
| 139 | + add r43 r44 into r45; |
| 140 | + cast r12.g into r46 as u32; |
| 141 | + add r45 r46 into r47; |
| 142 | + cast r13.field_0.g into r48 as u32; |
| 143 | + add r47 r48 into r49; |
| 144 | + cast r13.field_1.g into r50 as u32; |
| 145 | + add r49 r50 into r51; |
| 146 | + add r13.field_2.health r13.field_3.health into r52; |
| 147 | + add r52 r13.field_4.health into r53; |
| 148 | + add r53 r13.field_5.health into r54; |
| 149 | + add r54 r13.field_6.health into r55; |
| 150 | + ternary r13.field_2.active 1u32 0u32 into r56; |
| 151 | + ternary r13.field_3.active 1u32 0u32 into r57; |
| 152 | + add r56 r57 into r58; |
| 153 | + ternary r13.field_4.active 1u32 0u32 into r59; |
| 154 | + add r58 r59 into r60; |
| 155 | + ternary r13.field_5.active 1u32 0u32 into r61; |
| 156 | + add r60 r61 into r62; |
| 157 | + ternary r13.field_6.active 1u32 0u32 into r63; |
| 158 | + add r62 r63 into r64; |
| 159 | + add r13.field_7 r13.field_8 into r65; |
| 160 | + add r65 r13.field_9 into r66; |
| 161 | + add r66 r13.field_10 into r67; |
| 162 | + add r67 r13.field_11 into r68; |
| 163 | + add r68 r13.field_12 into r69; |
| 164 | + add r69 r13.field_13 into r70; |
| 165 | + add r70 r13.field_14 into r71; |
| 166 | + add r71 r13.field_15 into r72; |
| 167 | + add r72 r14.field_0 into r73; |
| 168 | + add r14.field_1[0u32] r14.field_1[1u32] into r74; |
| 169 | + add r74 r14.field_2[0u32] into r75; |
| 170 | + add r75 r14.field_2[1u32] into r76; |
| 171 | + add r76 r14.field_3[0u32] into r77; |
| 172 | + add r77 r14.field_3[1u32] into r78; |
| 173 | + add r14.field_4 r14.field_5 into r79; |
| 174 | + add r79 r14.field_6 into r80; |
| 175 | + add r80 r14.field_7 into r81; |
| 176 | + add r81 r14.field_8 into r82; |
| 177 | + add r82 r14.field_9 into r83; |
| 178 | + add r83 r14.field_10 into r84; |
| 179 | + add r84 r14.field_11 into r85; |
| 180 | + add r85 r14.field_12 into r86; |
| 181 | + add r86 r14.field_13 into r87; |
| 182 | + add r87 r14.field_14 into r88; |
| 183 | + add r88 r14.field_15 into r89; |
| 184 | + add r89 r15.field_0 into r90; |
| 185 | + add r90 r15.field_1 into r91; |
| 186 | + add r91 r15.field_2 into r92; |
| 187 | + add r92 r15.field_3 into r93; |
| 188 | + add r93 r15.field_4 into r94; |
| 189 | + add r94 r15.field_5 into r95; |
| 190 | + add r95 r15.field_6 into r96; |
| 191 | + add r96 r15.field_7 into r97; |
| 192 | + assert.eq r24 45u32; |
| 193 | + assert.eq r33 145u32; |
| 194 | + assert.eq r42 511u32; |
| 195 | + assert.eq r51 511u32; |
| 196 | + assert.eq r55 300u32; |
| 197 | + assert.eq r64 3u32; |
| 198 | + assert.eq r73 45u32; |
| 199 | + assert.eq r78 81u32; |
| 200 | + assert.eq r97 190u32; |
0 commit comments