1; RUN: llc < %s -mtriple=mipsel | FileCheck %s 2 3@a0 = external global i32 4@b0 = external global ptr 5@a1 = external global i32 6@b1 = external global ptr 7@a2 = external global i32 8@b2 = external global ptr 9@a3 = external global i32 10@b3 = external global ptr 11@a4 = external global i32 12@b4 = external global ptr 13@a5 = external global i32 14@b5 = external global ptr 15@a6 = external global i32 16@b6 = external global ptr 17@a7 = external global i32 18@b7 = external global ptr 19@a8 = external global i32 20@b8 = external global ptr 21@a9 = external global i32 22@b9 = external global ptr 23@a10 = external global i32 24@b10 = external global ptr 25@a11 = external global i32 26@b11 = external global ptr 27@a12 = external global i32 28@b12 = external global ptr 29@a13 = external global i32 30@b13 = external global ptr 31@a14 = external global i32 32@b14 = external global ptr 33@a15 = external global i32 34@b15 = external global ptr 35@a16 = external global i32 36@b16 = external global ptr 37@a17 = external global i32 38@b17 = external global ptr 39@a18 = external global i32 40@b18 = external global ptr 41@a19 = external global i32 42@b19 = external global ptr 43@a20 = external global i32 44@b20 = external global ptr 45@a21 = external global i32 46@b21 = external global ptr 47@a22 = external global i32 48@b22 = external global ptr 49@a23 = external global i32 50@b23 = external global ptr 51@a24 = external global i32 52@b24 = external global ptr 53@a25 = external global i32 54@b25 = external global ptr 55@a26 = external global i32 56@b26 = external global ptr 57@a27 = external global i32 58@b27 = external global ptr 59@a28 = external global i32 60@b28 = external global ptr 61@a29 = external global i32 62@b29 = external global ptr 63@c0 = external global ptr 64@c1 = external global ptr 65@c2 = external global ptr 66@c3 = external global ptr 67@c4 = external global ptr 68@c5 = external global ptr 69@c6 = external global ptr 70@c7 = external global ptr 71@c8 = external global ptr 72@c9 = external global ptr 73@c10 = external global ptr 74@c11 = external global ptr 75@c12 = external global ptr 76@c13 = external global ptr 77@c14 = external global ptr 78@c15 = external global ptr 79@c16 = external global ptr 80@c17 = external global ptr 81@c18 = external global ptr 82@c19 = external global ptr 83@c20 = external global ptr 84@c21 = external global ptr 85@c22 = external global ptr 86@c23 = external global ptr 87@c24 = external global ptr 88@c25 = external global ptr 89@c26 = external global ptr 90@c27 = external global ptr 91@c28 = external global ptr 92@c29 = external global ptr 93 94define i32 @f1() nounwind { 95entry: 96; CHECK: sw $ra, {{[0-9]+}}($sp) # 4-byte Folded Spill 97; CHECK: $ra 98; CHECK: lw $ra, {{[0-9]+}}($sp) # 4-byte Folded Reload 99; CHECK: jr $ra 100 101 %0 = load i32, ptr @a0, align 4 102 %1 = load ptr, ptr @b0, align 4 103 store i32 %0, ptr %1, align 4 104 %2 = load i32, ptr @a1, align 4 105 %3 = load ptr, ptr @b1, align 4 106 store i32 %2, ptr %3, align 4 107 %4 = load i32, ptr @a2, align 4 108 %5 = load ptr, ptr @b2, align 4 109 store i32 %4, ptr %5, align 4 110 %6 = load i32, ptr @a3, align 4 111 %7 = load ptr, ptr @b3, align 4 112 store i32 %6, ptr %7, align 4 113 %8 = load i32, ptr @a4, align 4 114 %9 = load ptr, ptr @b4, align 4 115 store i32 %8, ptr %9, align 4 116 %10 = load i32, ptr @a5, align 4 117 %11 = load ptr, ptr @b5, align 4 118 store i32 %10, ptr %11, align 4 119 %12 = load i32, ptr @a6, align 4 120 %13 = load ptr, ptr @b6, align 4 121 store i32 %12, ptr %13, align 4 122 %14 = load i32, ptr @a7, align 4 123 %15 = load ptr, ptr @b7, align 4 124 store i32 %14, ptr %15, align 4 125 %16 = load i32, ptr @a8, align 4 126 %17 = load ptr, ptr @b8, align 4 127 store i32 %16, ptr %17, align 4 128 %18 = load i32, ptr @a9, align 4 129 %19 = load ptr, ptr @b9, align 4 130 store i32 %18, ptr %19, align 4 131 %20 = load i32, ptr @a10, align 4 132 %21 = load ptr, ptr @b10, align 4 133 store i32 %20, ptr %21, align 4 134 %22 = load i32, ptr @a11, align 4 135 %23 = load ptr, ptr @b11, align 4 136 store i32 %22, ptr %23, align 4 137 %24 = load i32, ptr @a12, align 4 138 %25 = load ptr, ptr @b12, align 4 139 store i32 %24, ptr %25, align 4 140 %26 = load i32, ptr @a13, align 4 141 %27 = load ptr, ptr @b13, align 4 142 store i32 %26, ptr %27, align 4 143 %28 = load i32, ptr @a14, align 4 144 %29 = load ptr, ptr @b14, align 4 145 store i32 %28, ptr %29, align 4 146 %30 = load i32, ptr @a15, align 4 147 %31 = load ptr, ptr @b15, align 4 148 store i32 %30, ptr %31, align 4 149 %32 = load i32, ptr @a16, align 4 150 %33 = load ptr, ptr @b16, align 4 151 store i32 %32, ptr %33, align 4 152 %34 = load i32, ptr @a17, align 4 153 %35 = load ptr, ptr @b17, align 4 154 store i32 %34, ptr %35, align 4 155 %36 = load i32, ptr @a18, align 4 156 %37 = load ptr, ptr @b18, align 4 157 store i32 %36, ptr %37, align 4 158 %38 = load i32, ptr @a19, align 4 159 %39 = load ptr, ptr @b19, align 4 160 store i32 %38, ptr %39, align 4 161 %40 = load i32, ptr @a20, align 4 162 %41 = load ptr, ptr @b20, align 4 163 store i32 %40, ptr %41, align 4 164 %42 = load i32, ptr @a21, align 4 165 %43 = load ptr, ptr @b21, align 4 166 store i32 %42, ptr %43, align 4 167 %44 = load i32, ptr @a22, align 4 168 %45 = load ptr, ptr @b22, align 4 169 store i32 %44, ptr %45, align 4 170 %46 = load i32, ptr @a23, align 4 171 %47 = load ptr, ptr @b23, align 4 172 store i32 %46, ptr %47, align 4 173 %48 = load i32, ptr @a24, align 4 174 %49 = load ptr, ptr @b24, align 4 175 store i32 %48, ptr %49, align 4 176 %50 = load i32, ptr @a25, align 4 177 %51 = load ptr, ptr @b25, align 4 178 store i32 %50, ptr %51, align 4 179 %52 = load i32, ptr @a26, align 4 180 %53 = load ptr, ptr @b26, align 4 181 store i32 %52, ptr %53, align 4 182 %54 = load i32, ptr @a27, align 4 183 %55 = load ptr, ptr @b27, align 4 184 store i32 %54, ptr %55, align 4 185 %56 = load i32, ptr @a28, align 4 186 %57 = load ptr, ptr @b28, align 4 187 store i32 %56, ptr %57, align 4 188 %58 = load i32, ptr @a29, align 4 189 %59 = load ptr, ptr @b29, align 4 190 store i32 %58, ptr %59, align 4 191 %60 = load i32, ptr @a0, align 4 192 %61 = load ptr, ptr @c0, align 4 193 store i32 %60, ptr %61, align 4 194 %62 = load i32, ptr @a1, align 4 195 %63 = load ptr, ptr @c1, align 4 196 store i32 %62, ptr %63, align 4 197 %64 = load i32, ptr @a2, align 4 198 %65 = load ptr, ptr @c2, align 4 199 store i32 %64, ptr %65, align 4 200 %66 = load i32, ptr @a3, align 4 201 %67 = load ptr, ptr @c3, align 4 202 store i32 %66, ptr %67, align 4 203 %68 = load i32, ptr @a4, align 4 204 %69 = load ptr, ptr @c4, align 4 205 store i32 %68, ptr %69, align 4 206 %70 = load i32, ptr @a5, align 4 207 %71 = load ptr, ptr @c5, align 4 208 store i32 %70, ptr %71, align 4 209 %72 = load i32, ptr @a6, align 4 210 %73 = load ptr, ptr @c6, align 4 211 store i32 %72, ptr %73, align 4 212 %74 = load i32, ptr @a7, align 4 213 %75 = load ptr, ptr @c7, align 4 214 store i32 %74, ptr %75, align 4 215 %76 = load i32, ptr @a8, align 4 216 %77 = load ptr, ptr @c8, align 4 217 store i32 %76, ptr %77, align 4 218 %78 = load i32, ptr @a9, align 4 219 %79 = load ptr, ptr @c9, align 4 220 store i32 %78, ptr %79, align 4 221 %80 = load i32, ptr @a10, align 4 222 %81 = load ptr, ptr @c10, align 4 223 store i32 %80, ptr %81, align 4 224 %82 = load i32, ptr @a11, align 4 225 %83 = load ptr, ptr @c11, align 4 226 store i32 %82, ptr %83, align 4 227 %84 = load i32, ptr @a12, align 4 228 %85 = load ptr, ptr @c12, align 4 229 store i32 %84, ptr %85, align 4 230 %86 = load i32, ptr @a13, align 4 231 %87 = load ptr, ptr @c13, align 4 232 store i32 %86, ptr %87, align 4 233 %88 = load i32, ptr @a14, align 4 234 %89 = load ptr, ptr @c14, align 4 235 store i32 %88, ptr %89, align 4 236 %90 = load i32, ptr @a15, align 4 237 %91 = load ptr, ptr @c15, align 4 238 store i32 %90, ptr %91, align 4 239 %92 = load i32, ptr @a16, align 4 240 %93 = load ptr, ptr @c16, align 4 241 store i32 %92, ptr %93, align 4 242 %94 = load i32, ptr @a17, align 4 243 %95 = load ptr, ptr @c17, align 4 244 store i32 %94, ptr %95, align 4 245 %96 = load i32, ptr @a18, align 4 246 %97 = load ptr, ptr @c18, align 4 247 store i32 %96, ptr %97, align 4 248 %98 = load i32, ptr @a19, align 4 249 %99 = load ptr, ptr @c19, align 4 250 store i32 %98, ptr %99, align 4 251 %100 = load i32, ptr @a20, align 4 252 %101 = load ptr, ptr @c20, align 4 253 store i32 %100, ptr %101, align 4 254 %102 = load i32, ptr @a21, align 4 255 %103 = load ptr, ptr @c21, align 4 256 store i32 %102, ptr %103, align 4 257 %104 = load i32, ptr @a22, align 4 258 %105 = load ptr, ptr @c22, align 4 259 store i32 %104, ptr %105, align 4 260 %106 = load i32, ptr @a23, align 4 261 %107 = load ptr, ptr @c23, align 4 262 store i32 %106, ptr %107, align 4 263 %108 = load i32, ptr @a24, align 4 264 %109 = load ptr, ptr @c24, align 4 265 store i32 %108, ptr %109, align 4 266 %110 = load i32, ptr @a25, align 4 267 %111 = load ptr, ptr @c25, align 4 268 store i32 %110, ptr %111, align 4 269 %112 = load i32, ptr @a26, align 4 270 %113 = load ptr, ptr @c26, align 4 271 store i32 %112, ptr %113, align 4 272 %114 = load i32, ptr @a27, align 4 273 %115 = load ptr, ptr @c27, align 4 274 store i32 %114, ptr %115, align 4 275 %116 = load i32, ptr @a28, align 4 276 %117 = load ptr, ptr @c28, align 4 277 store i32 %116, ptr %117, align 4 278 %118 = load i32, ptr @a29, align 4 279 %119 = load ptr, ptr @c29, align 4 280 store i32 %118, ptr %119, align 4 281 %120 = load i32, ptr @a0, align 4 282 ret i32 %120 283} 284