Dan Gohman | da594cf | 2009-09-09 00:09:15 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -mtriple=thumbv6-apple-darwin |
Evan Cheng | 2868cf1 | 2009-08-13 06:05:07 +0000 | [diff] [blame] | 2 | |
| 3 | %struct.BF_KEY = type { [18 x i32], [1024 x i32] } |
| 4 | |
| 5 | define arm_apcscc void @BF_encrypt(i32* nocapture %data, %struct.BF_KEY* nocapture %key, i32 %encrypt) nounwind { |
| 6 | entry: |
| 7 | %0 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 0; <i32*> [#uses=2] |
| 8 | %1 = load i32* %data, align 4 ; <i32> [#uses=2] |
| 9 | %2 = load i32* undef, align 4 ; <i32> [#uses=2] |
| 10 | br i1 undef, label %bb1, label %bb |
| 11 | |
| 12 | bb: ; preds = %entry |
| 13 | %3 = load i32* %0, align 4 ; <i32> [#uses=1] |
| 14 | %4 = xor i32 %3, %1 ; <i32> [#uses=4] |
| 15 | %5 = load i32* null, align 4 ; <i32> [#uses=1] |
| 16 | %6 = lshr i32 %4, 24 ; <i32> [#uses=1] |
| 17 | %7 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %6; <i32*> [#uses=1] |
| 18 | %8 = load i32* %7, align 4 ; <i32> [#uses=1] |
| 19 | %9 = lshr i32 %4, 16 ; <i32> [#uses=1] |
| 20 | %10 = or i32 %9, 256 ; <i32> [#uses=1] |
| 21 | %11 = and i32 %10, 511 ; <i32> [#uses=1] |
| 22 | %12 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %11; <i32*> [#uses=1] |
| 23 | %13 = load i32* %12, align 4 ; <i32> [#uses=1] |
| 24 | %14 = add i32 %13, %8 ; <i32> [#uses=1] |
| 25 | %15 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 undef; <i32*> [#uses=1] |
| 26 | %16 = load i32* %15, align 4 ; <i32> [#uses=1] |
| 27 | %17 = xor i32 %14, %16 ; <i32> [#uses=1] |
| 28 | %18 = or i32 %4, 768 ; <i32> [#uses=1] |
| 29 | %19 = and i32 %18, 1023 ; <i32> [#uses=1] |
| 30 | %20 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %19; <i32*> [#uses=1] |
| 31 | %21 = load i32* %20, align 4 ; <i32> [#uses=1] |
| 32 | %22 = add i32 %17, %21 ; <i32> [#uses=1] |
| 33 | %23 = xor i32 %5, %2 ; <i32> [#uses=1] |
| 34 | %24 = xor i32 %23, %22 ; <i32> [#uses=5] |
| 35 | %25 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 2; <i32*> [#uses=1] |
| 36 | %26 = load i32* %25, align 4 ; <i32> [#uses=1] |
| 37 | %27 = lshr i32 %24, 24 ; <i32> [#uses=1] |
| 38 | %28 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %27; <i32*> [#uses=1] |
| 39 | %29 = load i32* %28, align 4 ; <i32> [#uses=1] |
| 40 | %30 = lshr i32 %24, 16 ; <i32> [#uses=1] |
| 41 | %31 = or i32 %30, 256 ; <i32> [#uses=1] |
| 42 | %32 = and i32 %31, 511 ; <i32> [#uses=1] |
| 43 | %33 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %32; <i32*> [#uses=1] |
| 44 | %34 = load i32* %33, align 4 ; <i32> [#uses=1] |
| 45 | %35 = add i32 %34, %29 ; <i32> [#uses=1] |
| 46 | %36 = lshr i32 %24, 8 ; <i32> [#uses=1] |
| 47 | %37 = or i32 %36, 512 ; <i32> [#uses=1] |
| 48 | %38 = and i32 %37, 767 ; <i32> [#uses=1] |
| 49 | %39 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %38; <i32*> [#uses=1] |
| 50 | %40 = load i32* %39, align 4 ; <i32> [#uses=1] |
| 51 | %41 = xor i32 %35, %40 ; <i32> [#uses=1] |
| 52 | %42 = or i32 %24, 768 ; <i32> [#uses=1] |
| 53 | %43 = and i32 %42, 1023 ; <i32> [#uses=1] |
| 54 | %44 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %43; <i32*> [#uses=1] |
| 55 | %45 = load i32* %44, align 4 ; <i32> [#uses=1] |
| 56 | %46 = add i32 %41, %45 ; <i32> [#uses=1] |
| 57 | %47 = xor i32 %26, %4 ; <i32> [#uses=1] |
| 58 | %48 = xor i32 %47, %46 ; <i32> [#uses=5] |
| 59 | %49 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 3; <i32*> [#uses=1] |
| 60 | %50 = load i32* %49, align 4 ; <i32> [#uses=1] |
| 61 | %51 = lshr i32 %48, 24 ; <i32> [#uses=1] |
| 62 | %52 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %51; <i32*> [#uses=1] |
| 63 | %53 = load i32* %52, align 4 ; <i32> [#uses=1] |
| 64 | %54 = lshr i32 %48, 16 ; <i32> [#uses=1] |
| 65 | %55 = or i32 %54, 256 ; <i32> [#uses=1] |
| 66 | %56 = and i32 %55, 511 ; <i32> [#uses=1] |
| 67 | %57 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %56; <i32*> [#uses=1] |
| 68 | %58 = load i32* %57, align 4 ; <i32> [#uses=1] |
| 69 | %59 = add i32 %58, %53 ; <i32> [#uses=1] |
| 70 | %60 = lshr i32 %48, 8 ; <i32> [#uses=1] |
| 71 | %61 = or i32 %60, 512 ; <i32> [#uses=1] |
| 72 | %62 = and i32 %61, 767 ; <i32> [#uses=1] |
| 73 | %63 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %62; <i32*> [#uses=1] |
| 74 | %64 = load i32* %63, align 4 ; <i32> [#uses=1] |
| 75 | %65 = xor i32 %59, %64 ; <i32> [#uses=1] |
| 76 | %66 = or i32 %48, 768 ; <i32> [#uses=1] |
| 77 | %67 = and i32 %66, 1023 ; <i32> [#uses=1] |
| 78 | %68 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %67; <i32*> [#uses=1] |
| 79 | %69 = load i32* %68, align 4 ; <i32> [#uses=1] |
| 80 | %70 = add i32 %65, %69 ; <i32> [#uses=1] |
| 81 | %71 = xor i32 %50, %24 ; <i32> [#uses=1] |
| 82 | %72 = xor i32 %71, %70 ; <i32> [#uses=5] |
| 83 | %73 = load i32* null, align 4 ; <i32> [#uses=1] |
| 84 | %74 = lshr i32 %72, 24 ; <i32> [#uses=1] |
| 85 | %75 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %74; <i32*> [#uses=1] |
| 86 | %76 = load i32* %75, align 4 ; <i32> [#uses=1] |
| 87 | %77 = lshr i32 %72, 16 ; <i32> [#uses=1] |
| 88 | %78 = or i32 %77, 256 ; <i32> [#uses=1] |
| 89 | %79 = and i32 %78, 511 ; <i32> [#uses=1] |
| 90 | %80 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %79; <i32*> [#uses=1] |
| 91 | %81 = load i32* %80, align 4 ; <i32> [#uses=1] |
| 92 | %82 = add i32 %81, %76 ; <i32> [#uses=1] |
| 93 | %83 = lshr i32 %72, 8 ; <i32> [#uses=1] |
| 94 | %84 = or i32 %83, 512 ; <i32> [#uses=1] |
| 95 | %85 = and i32 %84, 767 ; <i32> [#uses=1] |
| 96 | %86 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %85; <i32*> [#uses=1] |
| 97 | %87 = load i32* %86, align 4 ; <i32> [#uses=1] |
| 98 | %88 = xor i32 %82, %87 ; <i32> [#uses=1] |
| 99 | %89 = or i32 %72, 768 ; <i32> [#uses=1] |
| 100 | %90 = and i32 %89, 1023 ; <i32> [#uses=1] |
| 101 | %91 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %90; <i32*> [#uses=1] |
| 102 | %92 = load i32* %91, align 4 ; <i32> [#uses=1] |
| 103 | %93 = add i32 %88, %92 ; <i32> [#uses=1] |
| 104 | %94 = xor i32 %73, %48 ; <i32> [#uses=1] |
| 105 | %95 = xor i32 %94, %93 ; <i32> [#uses=5] |
| 106 | %96 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 107 | %97 = lshr i32 %95, 24 ; <i32> [#uses=1] |
| 108 | %98 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %97; <i32*> [#uses=1] |
| 109 | %99 = load i32* %98, align 4 ; <i32> [#uses=1] |
| 110 | %100 = lshr i32 %95, 16 ; <i32> [#uses=1] |
| 111 | %101 = or i32 %100, 256 ; <i32> [#uses=1] |
| 112 | %102 = and i32 %101, 511 ; <i32> [#uses=1] |
| 113 | %103 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %102; <i32*> [#uses=1] |
| 114 | %104 = load i32* %103, align 4 ; <i32> [#uses=1] |
| 115 | %105 = add i32 %104, %99 ; <i32> [#uses=1] |
| 116 | %106 = lshr i32 %95, 8 ; <i32> [#uses=1] |
| 117 | %107 = or i32 %106, 512 ; <i32> [#uses=1] |
| 118 | %108 = and i32 %107, 767 ; <i32> [#uses=1] |
| 119 | %109 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %108; <i32*> [#uses=1] |
| 120 | %110 = load i32* %109, align 4 ; <i32> [#uses=1] |
| 121 | %111 = xor i32 %105, %110 ; <i32> [#uses=1] |
| 122 | %112 = or i32 %95, 768 ; <i32> [#uses=1] |
| 123 | %113 = and i32 %112, 1023 ; <i32> [#uses=1] |
| 124 | %114 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %113; <i32*> [#uses=1] |
| 125 | %115 = load i32* %114, align 4 ; <i32> [#uses=1] |
| 126 | %116 = add i32 %111, %115 ; <i32> [#uses=1] |
| 127 | %117 = xor i32 %96, %72 ; <i32> [#uses=1] |
| 128 | %118 = xor i32 %117, %116 ; <i32> [#uses=5] |
| 129 | %119 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 6; <i32*> [#uses=1] |
| 130 | %120 = load i32* %119, align 4 ; <i32> [#uses=1] |
| 131 | %121 = lshr i32 %118, 24 ; <i32> [#uses=1] |
| 132 | %122 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %121; <i32*> [#uses=1] |
| 133 | %123 = load i32* %122, align 4 ; <i32> [#uses=1] |
| 134 | %124 = lshr i32 %118, 16 ; <i32> [#uses=1] |
| 135 | %125 = or i32 %124, 256 ; <i32> [#uses=1] |
| 136 | %126 = and i32 %125, 511 ; <i32> [#uses=1] |
| 137 | %127 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %126; <i32*> [#uses=1] |
| 138 | %128 = load i32* %127, align 4 ; <i32> [#uses=1] |
| 139 | %129 = add i32 %128, %123 ; <i32> [#uses=1] |
| 140 | %130 = lshr i32 %118, 8 ; <i32> [#uses=1] |
| 141 | %131 = or i32 %130, 512 ; <i32> [#uses=1] |
| 142 | %132 = and i32 %131, 767 ; <i32> [#uses=1] |
| 143 | %133 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %132; <i32*> [#uses=1] |
| 144 | %134 = load i32* %133, align 4 ; <i32> [#uses=1] |
| 145 | %135 = xor i32 %129, %134 ; <i32> [#uses=1] |
| 146 | %136 = or i32 %118, 768 ; <i32> [#uses=1] |
| 147 | %137 = and i32 %136, 1023 ; <i32> [#uses=1] |
| 148 | %138 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %137; <i32*> [#uses=1] |
| 149 | %139 = load i32* %138, align 4 ; <i32> [#uses=1] |
| 150 | %140 = add i32 %135, %139 ; <i32> [#uses=1] |
| 151 | %141 = xor i32 %120, %95 ; <i32> [#uses=1] |
| 152 | %142 = xor i32 %141, %140 ; <i32> [#uses=5] |
| 153 | %143 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 7; <i32*> [#uses=1] |
| 154 | %144 = load i32* %143, align 4 ; <i32> [#uses=1] |
| 155 | %145 = lshr i32 %142, 24 ; <i32> [#uses=1] |
| 156 | %146 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %145; <i32*> [#uses=1] |
| 157 | %147 = load i32* %146, align 4 ; <i32> [#uses=1] |
| 158 | %148 = lshr i32 %142, 16 ; <i32> [#uses=1] |
| 159 | %149 = or i32 %148, 256 ; <i32> [#uses=1] |
| 160 | %150 = and i32 %149, 511 ; <i32> [#uses=1] |
| 161 | %151 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %150; <i32*> [#uses=1] |
| 162 | %152 = load i32* %151, align 4 ; <i32> [#uses=1] |
| 163 | %153 = add i32 %152, %147 ; <i32> [#uses=1] |
| 164 | %154 = lshr i32 %142, 8 ; <i32> [#uses=1] |
| 165 | %155 = or i32 %154, 512 ; <i32> [#uses=1] |
| 166 | %156 = and i32 %155, 767 ; <i32> [#uses=1] |
| 167 | %157 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %156; <i32*> [#uses=1] |
| 168 | %158 = load i32* %157, align 4 ; <i32> [#uses=1] |
| 169 | %159 = xor i32 %153, %158 ; <i32> [#uses=1] |
| 170 | %160 = or i32 %142, 768 ; <i32> [#uses=1] |
| 171 | %161 = and i32 %160, 1023 ; <i32> [#uses=1] |
| 172 | %162 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %161; <i32*> [#uses=1] |
| 173 | %163 = load i32* %162, align 4 ; <i32> [#uses=1] |
| 174 | %164 = add i32 %159, %163 ; <i32> [#uses=1] |
| 175 | %165 = xor i32 %144, %118 ; <i32> [#uses=1] |
| 176 | %166 = xor i32 %165, %164 ; <i32> [#uses=5] |
| 177 | %167 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 178 | %168 = lshr i32 %166, 24 ; <i32> [#uses=1] |
| 179 | %169 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %168; <i32*> [#uses=1] |
| 180 | %170 = load i32* %169, align 4 ; <i32> [#uses=1] |
| 181 | %171 = lshr i32 %166, 16 ; <i32> [#uses=1] |
| 182 | %172 = or i32 %171, 256 ; <i32> [#uses=1] |
| 183 | %173 = and i32 %172, 511 ; <i32> [#uses=1] |
| 184 | %174 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %173; <i32*> [#uses=1] |
| 185 | %175 = load i32* %174, align 4 ; <i32> [#uses=1] |
| 186 | %176 = add i32 %175, %170 ; <i32> [#uses=1] |
| 187 | %177 = lshr i32 %166, 8 ; <i32> [#uses=1] |
| 188 | %178 = or i32 %177, 512 ; <i32> [#uses=1] |
| 189 | %179 = and i32 %178, 767 ; <i32> [#uses=1] |
| 190 | %180 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %179; <i32*> [#uses=1] |
| 191 | %181 = load i32* %180, align 4 ; <i32> [#uses=1] |
| 192 | %182 = xor i32 %176, %181 ; <i32> [#uses=1] |
| 193 | %183 = or i32 %166, 768 ; <i32> [#uses=1] |
| 194 | %184 = and i32 %183, 1023 ; <i32> [#uses=1] |
| 195 | %185 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %184; <i32*> [#uses=1] |
| 196 | %186 = load i32* %185, align 4 ; <i32> [#uses=1] |
| 197 | %187 = add i32 %182, %186 ; <i32> [#uses=1] |
| 198 | %188 = xor i32 %167, %142 ; <i32> [#uses=1] |
| 199 | %189 = xor i32 %188, %187 ; <i32> [#uses=5] |
| 200 | %190 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 9; <i32*> [#uses=1] |
| 201 | %191 = load i32* %190, align 4 ; <i32> [#uses=1] |
| 202 | %192 = lshr i32 %189, 24 ; <i32> [#uses=1] |
| 203 | %193 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %192; <i32*> [#uses=1] |
| 204 | %194 = load i32* %193, align 4 ; <i32> [#uses=1] |
| 205 | %195 = lshr i32 %189, 16 ; <i32> [#uses=1] |
| 206 | %196 = or i32 %195, 256 ; <i32> [#uses=1] |
| 207 | %197 = and i32 %196, 511 ; <i32> [#uses=1] |
| 208 | %198 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %197; <i32*> [#uses=1] |
| 209 | %199 = load i32* %198, align 4 ; <i32> [#uses=1] |
| 210 | %200 = add i32 %199, %194 ; <i32> [#uses=1] |
| 211 | %201 = lshr i32 %189, 8 ; <i32> [#uses=1] |
| 212 | %202 = or i32 %201, 512 ; <i32> [#uses=1] |
| 213 | %203 = and i32 %202, 767 ; <i32> [#uses=1] |
| 214 | %204 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %203; <i32*> [#uses=1] |
| 215 | %205 = load i32* %204, align 4 ; <i32> [#uses=1] |
| 216 | %206 = xor i32 %200, %205 ; <i32> [#uses=1] |
| 217 | %207 = or i32 %189, 768 ; <i32> [#uses=1] |
| 218 | %208 = and i32 %207, 1023 ; <i32> [#uses=1] |
| 219 | %209 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %208; <i32*> [#uses=1] |
| 220 | %210 = load i32* %209, align 4 ; <i32> [#uses=1] |
| 221 | %211 = add i32 %206, %210 ; <i32> [#uses=1] |
| 222 | %212 = xor i32 %191, %166 ; <i32> [#uses=1] |
| 223 | %213 = xor i32 %212, %211 ; <i32> [#uses=5] |
| 224 | %214 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 10; <i32*> [#uses=1] |
| 225 | %215 = load i32* %214, align 4 ; <i32> [#uses=1] |
| 226 | %216 = lshr i32 %213, 24 ; <i32> [#uses=1] |
| 227 | %217 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %216; <i32*> [#uses=1] |
| 228 | %218 = load i32* %217, align 4 ; <i32> [#uses=1] |
| 229 | %219 = lshr i32 %213, 16 ; <i32> [#uses=1] |
| 230 | %220 = or i32 %219, 256 ; <i32> [#uses=1] |
| 231 | %221 = and i32 %220, 511 ; <i32> [#uses=1] |
| 232 | %222 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %221; <i32*> [#uses=1] |
| 233 | %223 = load i32* %222, align 4 ; <i32> [#uses=1] |
| 234 | %224 = add i32 %223, %218 ; <i32> [#uses=1] |
| 235 | %225 = lshr i32 %213, 8 ; <i32> [#uses=1] |
| 236 | %226 = or i32 %225, 512 ; <i32> [#uses=1] |
| 237 | %227 = and i32 %226, 767 ; <i32> [#uses=1] |
| 238 | %228 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %227; <i32*> [#uses=1] |
| 239 | %229 = load i32* %228, align 4 ; <i32> [#uses=1] |
| 240 | %230 = xor i32 %224, %229 ; <i32> [#uses=1] |
| 241 | %231 = or i32 %213, 768 ; <i32> [#uses=1] |
| 242 | %232 = and i32 %231, 1023 ; <i32> [#uses=1] |
| 243 | %233 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %232; <i32*> [#uses=1] |
| 244 | %234 = load i32* %233, align 4 ; <i32> [#uses=1] |
| 245 | %235 = add i32 %230, %234 ; <i32> [#uses=1] |
| 246 | %236 = xor i32 %215, %189 ; <i32> [#uses=1] |
| 247 | %237 = xor i32 %236, %235 ; <i32> [#uses=5] |
| 248 | %238 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 11; <i32*> [#uses=1] |
| 249 | %239 = load i32* %238, align 4 ; <i32> [#uses=1] |
| 250 | %240 = lshr i32 %237, 24 ; <i32> [#uses=1] |
| 251 | %241 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %240; <i32*> [#uses=1] |
| 252 | %242 = load i32* %241, align 4 ; <i32> [#uses=1] |
| 253 | %243 = lshr i32 %237, 16 ; <i32> [#uses=1] |
| 254 | %244 = or i32 %243, 256 ; <i32> [#uses=1] |
| 255 | %245 = and i32 %244, 511 ; <i32> [#uses=1] |
| 256 | %246 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %245; <i32*> [#uses=1] |
| 257 | %247 = load i32* %246, align 4 ; <i32> [#uses=1] |
| 258 | %248 = add i32 %247, %242 ; <i32> [#uses=1] |
| 259 | %249 = lshr i32 %237, 8 ; <i32> [#uses=1] |
| 260 | %250 = or i32 %249, 512 ; <i32> [#uses=1] |
| 261 | %251 = and i32 %250, 767 ; <i32> [#uses=1] |
| 262 | %252 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %251; <i32*> [#uses=1] |
| 263 | %253 = load i32* %252, align 4 ; <i32> [#uses=1] |
| 264 | %254 = xor i32 %248, %253 ; <i32> [#uses=1] |
| 265 | %255 = or i32 %237, 768 ; <i32> [#uses=1] |
| 266 | %256 = and i32 %255, 1023 ; <i32> [#uses=1] |
| 267 | %257 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %256; <i32*> [#uses=1] |
| 268 | %258 = load i32* %257, align 4 ; <i32> [#uses=1] |
| 269 | %259 = add i32 %254, %258 ; <i32> [#uses=1] |
| 270 | %260 = xor i32 %239, %213 ; <i32> [#uses=1] |
| 271 | %261 = xor i32 %260, %259 ; <i32> [#uses=5] |
| 272 | %262 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 273 | %263 = lshr i32 %261, 24 ; <i32> [#uses=1] |
| 274 | %264 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %263; <i32*> [#uses=1] |
| 275 | %265 = load i32* %264, align 4 ; <i32> [#uses=1] |
| 276 | %266 = lshr i32 %261, 16 ; <i32> [#uses=1] |
| 277 | %267 = or i32 %266, 256 ; <i32> [#uses=1] |
| 278 | %268 = and i32 %267, 511 ; <i32> [#uses=1] |
| 279 | %269 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %268; <i32*> [#uses=1] |
| 280 | %270 = load i32* %269, align 4 ; <i32> [#uses=1] |
| 281 | %271 = add i32 %270, %265 ; <i32> [#uses=1] |
| 282 | %272 = lshr i32 %261, 8 ; <i32> [#uses=1] |
| 283 | %273 = or i32 %272, 512 ; <i32> [#uses=1] |
| 284 | %274 = and i32 %273, 767 ; <i32> [#uses=1] |
| 285 | %275 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %274; <i32*> [#uses=1] |
| 286 | %276 = load i32* %275, align 4 ; <i32> [#uses=1] |
| 287 | %277 = xor i32 %271, %276 ; <i32> [#uses=1] |
| 288 | %278 = or i32 %261, 768 ; <i32> [#uses=1] |
| 289 | %279 = and i32 %278, 1023 ; <i32> [#uses=1] |
| 290 | %280 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %279; <i32*> [#uses=1] |
| 291 | %281 = load i32* %280, align 4 ; <i32> [#uses=1] |
| 292 | %282 = add i32 %277, %281 ; <i32> [#uses=1] |
| 293 | %283 = xor i32 %262, %237 ; <i32> [#uses=1] |
| 294 | %284 = xor i32 %283, %282 ; <i32> [#uses=4] |
| 295 | %285 = load i32* null, align 4 ; <i32> [#uses=1] |
| 296 | %286 = lshr i32 %284, 24 ; <i32> [#uses=1] |
| 297 | %287 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %286; <i32*> [#uses=1] |
| 298 | %288 = load i32* %287, align 4 ; <i32> [#uses=1] |
| 299 | %289 = lshr i32 %284, 16 ; <i32> [#uses=1] |
| 300 | %290 = or i32 %289, 256 ; <i32> [#uses=1] |
| 301 | %291 = and i32 %290, 511 ; <i32> [#uses=1] |
| 302 | %292 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %291; <i32*> [#uses=1] |
| 303 | %293 = load i32* %292, align 4 ; <i32> [#uses=1] |
| 304 | %294 = add i32 %293, %288 ; <i32> [#uses=1] |
| 305 | %295 = lshr i32 %284, 8 ; <i32> [#uses=1] |
| 306 | %296 = or i32 %295, 512 ; <i32> [#uses=1] |
| 307 | %297 = and i32 %296, 767 ; <i32> [#uses=1] |
| 308 | %298 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %297; <i32*> [#uses=1] |
| 309 | %299 = load i32* %298, align 4 ; <i32> [#uses=1] |
| 310 | %300 = xor i32 %294, %299 ; <i32> [#uses=1] |
| 311 | %301 = or i32 %284, 768 ; <i32> [#uses=1] |
| 312 | %302 = and i32 %301, 1023 ; <i32> [#uses=1] |
| 313 | %303 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %302; <i32*> [#uses=1] |
| 314 | %304 = load i32* %303, align 4 ; <i32> [#uses=1] |
| 315 | %305 = add i32 %300, %304 ; <i32> [#uses=1] |
| 316 | %306 = xor i32 %285, %261 ; <i32> [#uses=1] |
| 317 | %307 = xor i32 %306, %305 ; <i32> [#uses=1] |
| 318 | %308 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 15; <i32*> [#uses=1] |
| 319 | %309 = load i32* %308, align 4 ; <i32> [#uses=1] |
| 320 | %310 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 0; <i32*> [#uses=1] |
| 321 | %311 = load i32* %310, align 4 ; <i32> [#uses=1] |
| 322 | %312 = or i32 0, 256 ; <i32> [#uses=1] |
| 323 | %313 = and i32 %312, 511 ; <i32> [#uses=1] |
| 324 | %314 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %313; <i32*> [#uses=1] |
| 325 | %315 = load i32* %314, align 4 ; <i32> [#uses=1] |
| 326 | %316 = add i32 %315, %311 ; <i32> [#uses=1] |
| 327 | %317 = or i32 0, 512 ; <i32> [#uses=1] |
| 328 | %318 = and i32 %317, 767 ; <i32> [#uses=1] |
| 329 | %319 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %318; <i32*> [#uses=1] |
| 330 | %320 = load i32* %319, align 4 ; <i32> [#uses=1] |
| 331 | %321 = xor i32 %316, %320 ; <i32> [#uses=1] |
| 332 | %322 = or i32 0, 768 ; <i32> [#uses=1] |
| 333 | %323 = and i32 %322, 1023 ; <i32> [#uses=1] |
| 334 | %324 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %323; <i32*> [#uses=1] |
| 335 | %325 = load i32* %324, align 4 ; <i32> [#uses=1] |
| 336 | %326 = add i32 %321, %325 ; <i32> [#uses=1] |
| 337 | %327 = xor i32 %309, %307 ; <i32> [#uses=1] |
| 338 | %328 = xor i32 %327, %326 ; <i32> [#uses=5] |
| 339 | %329 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 17; <i32*> [#uses=1] |
| 340 | br label %bb2 |
| 341 | |
| 342 | bb1: ; preds = %entry |
| 343 | %330 = load i32* null, align 4 ; <i32> [#uses=1] |
| 344 | %331 = xor i32 %330, %1 ; <i32> [#uses=4] |
| 345 | %332 = load i32* null, align 4 ; <i32> [#uses=1] |
| 346 | %333 = lshr i32 %331, 24 ; <i32> [#uses=1] |
| 347 | %334 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %333; <i32*> [#uses=1] |
| 348 | %335 = load i32* %334, align 4 ; <i32> [#uses=1] |
| 349 | %336 = load i32* null, align 4 ; <i32> [#uses=1] |
| 350 | %337 = add i32 %336, %335 ; <i32> [#uses=1] |
| 351 | %338 = lshr i32 %331, 8 ; <i32> [#uses=1] |
| 352 | %339 = or i32 %338, 512 ; <i32> [#uses=1] |
| 353 | %340 = and i32 %339, 767 ; <i32> [#uses=1] |
| 354 | %341 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %340; <i32*> [#uses=1] |
| 355 | %342 = load i32* %341, align 4 ; <i32> [#uses=1] |
| 356 | %343 = xor i32 %337, %342 ; <i32> [#uses=1] |
| 357 | %344 = or i32 %331, 768 ; <i32> [#uses=1] |
| 358 | %345 = and i32 %344, 1023 ; <i32> [#uses=1] |
| 359 | %346 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %345; <i32*> [#uses=1] |
| 360 | %347 = load i32* %346, align 4 ; <i32> [#uses=1] |
| 361 | %348 = add i32 %343, %347 ; <i32> [#uses=1] |
| 362 | %349 = xor i32 %332, %2 ; <i32> [#uses=1] |
| 363 | %350 = xor i32 %349, %348 ; <i32> [#uses=5] |
| 364 | %351 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 15; <i32*> [#uses=1] |
| 365 | %352 = load i32* %351, align 4 ; <i32> [#uses=1] |
| 366 | %353 = lshr i32 %350, 24 ; <i32> [#uses=1] |
| 367 | %354 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %353; <i32*> [#uses=1] |
| 368 | %355 = load i32* %354, align 4 ; <i32> [#uses=1] |
| 369 | %356 = lshr i32 %350, 16 ; <i32> [#uses=1] |
| 370 | %357 = or i32 %356, 256 ; <i32> [#uses=1] |
| 371 | %358 = and i32 %357, 511 ; <i32> [#uses=1] |
| 372 | %359 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %358; <i32*> [#uses=1] |
| 373 | %360 = load i32* %359, align 4 ; <i32> [#uses=1] |
| 374 | %361 = add i32 %360, %355 ; <i32> [#uses=1] |
| 375 | %362 = lshr i32 %350, 8 ; <i32> [#uses=1] |
| 376 | %363 = or i32 %362, 512 ; <i32> [#uses=1] |
| 377 | %364 = and i32 %363, 767 ; <i32> [#uses=1] |
| 378 | %365 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %364; <i32*> [#uses=1] |
| 379 | %366 = load i32* %365, align 4 ; <i32> [#uses=1] |
| 380 | %367 = xor i32 %361, %366 ; <i32> [#uses=1] |
| 381 | %368 = or i32 %350, 768 ; <i32> [#uses=1] |
| 382 | %369 = and i32 %368, 1023 ; <i32> [#uses=1] |
| 383 | %370 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %369; <i32*> [#uses=1] |
| 384 | %371 = load i32* %370, align 4 ; <i32> [#uses=1] |
| 385 | %372 = add i32 %367, %371 ; <i32> [#uses=1] |
| 386 | %373 = xor i32 %352, %331 ; <i32> [#uses=1] |
| 387 | %374 = xor i32 %373, %372 ; <i32> [#uses=5] |
| 388 | %375 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 14; <i32*> [#uses=1] |
| 389 | %376 = load i32* %375, align 4 ; <i32> [#uses=1] |
| 390 | %377 = lshr i32 %374, 24 ; <i32> [#uses=1] |
| 391 | %378 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %377; <i32*> [#uses=1] |
| 392 | %379 = load i32* %378, align 4 ; <i32> [#uses=1] |
| 393 | %380 = lshr i32 %374, 16 ; <i32> [#uses=1] |
| 394 | %381 = or i32 %380, 256 ; <i32> [#uses=1] |
| 395 | %382 = and i32 %381, 511 ; <i32> [#uses=1] |
| 396 | %383 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %382; <i32*> [#uses=1] |
| 397 | %384 = load i32* %383, align 4 ; <i32> [#uses=1] |
| 398 | %385 = add i32 %384, %379 ; <i32> [#uses=1] |
| 399 | %386 = lshr i32 %374, 8 ; <i32> [#uses=1] |
| 400 | %387 = or i32 %386, 512 ; <i32> [#uses=1] |
| 401 | %388 = and i32 %387, 767 ; <i32> [#uses=1] |
| 402 | %389 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %388; <i32*> [#uses=1] |
| 403 | %390 = load i32* %389, align 4 ; <i32> [#uses=1] |
| 404 | %391 = xor i32 %385, %390 ; <i32> [#uses=1] |
| 405 | %392 = or i32 %374, 768 ; <i32> [#uses=1] |
| 406 | %393 = and i32 %392, 1023 ; <i32> [#uses=1] |
| 407 | %394 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %393; <i32*> [#uses=1] |
| 408 | %395 = load i32* %394, align 4 ; <i32> [#uses=1] |
| 409 | %396 = add i32 %391, %395 ; <i32> [#uses=1] |
| 410 | %397 = xor i32 %376, %350 ; <i32> [#uses=1] |
| 411 | %398 = xor i32 %397, %396 ; <i32> [#uses=5] |
| 412 | %399 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 13; <i32*> [#uses=1] |
| 413 | %400 = load i32* %399, align 4 ; <i32> [#uses=1] |
| 414 | %401 = lshr i32 %398, 24 ; <i32> [#uses=1] |
| 415 | %402 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %401; <i32*> [#uses=1] |
| 416 | %403 = load i32* %402, align 4 ; <i32> [#uses=1] |
| 417 | %404 = lshr i32 %398, 16 ; <i32> [#uses=1] |
| 418 | %405 = or i32 %404, 256 ; <i32> [#uses=1] |
| 419 | %406 = and i32 %405, 511 ; <i32> [#uses=1] |
| 420 | %407 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %406; <i32*> [#uses=1] |
| 421 | %408 = load i32* %407, align 4 ; <i32> [#uses=1] |
| 422 | %409 = add i32 %408, %403 ; <i32> [#uses=1] |
| 423 | %410 = lshr i32 %398, 8 ; <i32> [#uses=1] |
| 424 | %411 = or i32 %410, 512 ; <i32> [#uses=1] |
| 425 | %412 = and i32 %411, 767 ; <i32> [#uses=1] |
| 426 | %413 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %412; <i32*> [#uses=1] |
| 427 | %414 = load i32* %413, align 4 ; <i32> [#uses=1] |
| 428 | %415 = xor i32 %409, %414 ; <i32> [#uses=1] |
| 429 | %416 = or i32 %398, 768 ; <i32> [#uses=1] |
| 430 | %417 = and i32 %416, 1023 ; <i32> [#uses=1] |
| 431 | %418 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %417; <i32*> [#uses=1] |
| 432 | %419 = load i32* %418, align 4 ; <i32> [#uses=1] |
| 433 | %420 = add i32 %415, %419 ; <i32> [#uses=1] |
| 434 | %421 = xor i32 %400, %374 ; <i32> [#uses=1] |
| 435 | %422 = xor i32 %421, %420 ; <i32> [#uses=5] |
| 436 | %423 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 12; <i32*> [#uses=1] |
| 437 | %424 = load i32* %423, align 4 ; <i32> [#uses=1] |
| 438 | %425 = lshr i32 %422, 24 ; <i32> [#uses=1] |
| 439 | %426 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %425; <i32*> [#uses=1] |
| 440 | %427 = load i32* %426, align 4 ; <i32> [#uses=1] |
| 441 | %428 = lshr i32 %422, 16 ; <i32> [#uses=1] |
| 442 | %429 = or i32 %428, 256 ; <i32> [#uses=1] |
| 443 | %430 = and i32 %429, 511 ; <i32> [#uses=1] |
| 444 | %431 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %430; <i32*> [#uses=1] |
| 445 | %432 = load i32* %431, align 4 ; <i32> [#uses=1] |
| 446 | %433 = add i32 %432, %427 ; <i32> [#uses=1] |
| 447 | %434 = lshr i32 %422, 8 ; <i32> [#uses=1] |
| 448 | %435 = or i32 %434, 512 ; <i32> [#uses=1] |
| 449 | %436 = and i32 %435, 767 ; <i32> [#uses=1] |
| 450 | %437 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %436; <i32*> [#uses=1] |
| 451 | %438 = load i32* %437, align 4 ; <i32> [#uses=1] |
| 452 | %439 = xor i32 %433, %438 ; <i32> [#uses=1] |
| 453 | %440 = or i32 %422, 768 ; <i32> [#uses=1] |
| 454 | %441 = and i32 %440, 1023 ; <i32> [#uses=1] |
| 455 | %442 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %441; <i32*> [#uses=1] |
| 456 | %443 = load i32* %442, align 4 ; <i32> [#uses=1] |
| 457 | %444 = add i32 %439, %443 ; <i32> [#uses=1] |
| 458 | %445 = xor i32 %424, %398 ; <i32> [#uses=1] |
| 459 | %446 = xor i32 %445, %444 ; <i32> [#uses=5] |
| 460 | %447 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 461 | %448 = lshr i32 %446, 24 ; <i32> [#uses=1] |
| 462 | %449 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %448; <i32*> [#uses=1] |
| 463 | %450 = load i32* %449, align 4 ; <i32> [#uses=1] |
| 464 | %451 = lshr i32 %446, 16 ; <i32> [#uses=1] |
| 465 | %452 = or i32 %451, 256 ; <i32> [#uses=1] |
| 466 | %453 = and i32 %452, 511 ; <i32> [#uses=1] |
| 467 | %454 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %453; <i32*> [#uses=1] |
| 468 | %455 = load i32* %454, align 4 ; <i32> [#uses=1] |
| 469 | %456 = add i32 %455, %450 ; <i32> [#uses=1] |
| 470 | %457 = lshr i32 %446, 8 ; <i32> [#uses=1] |
| 471 | %458 = or i32 %457, 512 ; <i32> [#uses=1] |
| 472 | %459 = and i32 %458, 767 ; <i32> [#uses=1] |
| 473 | %460 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %459; <i32*> [#uses=1] |
| 474 | %461 = load i32* %460, align 4 ; <i32> [#uses=1] |
| 475 | %462 = xor i32 %456, %461 ; <i32> [#uses=1] |
| 476 | %463 = or i32 %446, 768 ; <i32> [#uses=1] |
| 477 | %464 = and i32 %463, 1023 ; <i32> [#uses=1] |
| 478 | %465 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %464; <i32*> [#uses=1] |
| 479 | %466 = load i32* %465, align 4 ; <i32> [#uses=1] |
| 480 | %467 = add i32 %462, %466 ; <i32> [#uses=1] |
| 481 | %468 = xor i32 %447, %422 ; <i32> [#uses=1] |
| 482 | %469 = xor i32 %468, %467 ; <i32> [#uses=5] |
| 483 | %470 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 10; <i32*> [#uses=1] |
| 484 | %471 = load i32* %470, align 4 ; <i32> [#uses=1] |
| 485 | %472 = lshr i32 %469, 24 ; <i32> [#uses=1] |
| 486 | %473 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %472; <i32*> [#uses=1] |
| 487 | %474 = load i32* %473, align 4 ; <i32> [#uses=1] |
| 488 | %475 = lshr i32 %469, 16 ; <i32> [#uses=1] |
| 489 | %476 = or i32 %475, 256 ; <i32> [#uses=1] |
| 490 | %477 = and i32 %476, 511 ; <i32> [#uses=1] |
| 491 | %478 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %477; <i32*> [#uses=1] |
| 492 | %479 = load i32* %478, align 4 ; <i32> [#uses=1] |
| 493 | %480 = add i32 %479, %474 ; <i32> [#uses=1] |
| 494 | %481 = lshr i32 %469, 8 ; <i32> [#uses=1] |
| 495 | %482 = or i32 %481, 512 ; <i32> [#uses=1] |
| 496 | %483 = and i32 %482, 767 ; <i32> [#uses=1] |
| 497 | %484 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %483; <i32*> [#uses=1] |
| 498 | %485 = load i32* %484, align 4 ; <i32> [#uses=1] |
| 499 | %486 = xor i32 %480, %485 ; <i32> [#uses=1] |
| 500 | %487 = or i32 %469, 768 ; <i32> [#uses=1] |
| 501 | %488 = and i32 %487, 1023 ; <i32> [#uses=1] |
| 502 | %489 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %488; <i32*> [#uses=1] |
| 503 | %490 = load i32* %489, align 4 ; <i32> [#uses=1] |
| 504 | %491 = add i32 %486, %490 ; <i32> [#uses=1] |
| 505 | %492 = xor i32 %471, %446 ; <i32> [#uses=1] |
| 506 | %493 = xor i32 %492, %491 ; <i32> [#uses=5] |
| 507 | %494 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 9; <i32*> [#uses=1] |
| 508 | %495 = load i32* %494, align 4 ; <i32> [#uses=1] |
| 509 | %496 = lshr i32 %493, 24 ; <i32> [#uses=1] |
| 510 | %497 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %496; <i32*> [#uses=1] |
| 511 | %498 = load i32* %497, align 4 ; <i32> [#uses=1] |
| 512 | %499 = lshr i32 %493, 16 ; <i32> [#uses=1] |
| 513 | %500 = or i32 %499, 256 ; <i32> [#uses=1] |
| 514 | %501 = and i32 %500, 511 ; <i32> [#uses=1] |
| 515 | %502 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %501; <i32*> [#uses=1] |
| 516 | %503 = load i32* %502, align 4 ; <i32> [#uses=1] |
| 517 | %504 = add i32 %503, %498 ; <i32> [#uses=1] |
| 518 | %505 = lshr i32 %493, 8 ; <i32> [#uses=1] |
| 519 | %506 = or i32 %505, 512 ; <i32> [#uses=1] |
| 520 | %507 = and i32 %506, 767 ; <i32> [#uses=1] |
| 521 | %508 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %507; <i32*> [#uses=1] |
| 522 | %509 = load i32* %508, align 4 ; <i32> [#uses=1] |
| 523 | %510 = xor i32 %504, %509 ; <i32> [#uses=1] |
| 524 | %511 = or i32 %493, 768 ; <i32> [#uses=1] |
| 525 | %512 = and i32 %511, 1023 ; <i32> [#uses=1] |
| 526 | %513 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %512; <i32*> [#uses=1] |
| 527 | %514 = load i32* %513, align 4 ; <i32> [#uses=1] |
| 528 | %515 = add i32 %510, %514 ; <i32> [#uses=1] |
| 529 | %516 = xor i32 %495, %469 ; <i32> [#uses=1] |
| 530 | %517 = xor i32 %516, %515 ; <i32> [#uses=5] |
| 531 | %518 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 8; <i32*> [#uses=1] |
| 532 | %519 = load i32* %518, align 4 ; <i32> [#uses=1] |
| 533 | %520 = lshr i32 %517, 24 ; <i32> [#uses=1] |
| 534 | %521 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %520; <i32*> [#uses=1] |
| 535 | %522 = load i32* %521, align 4 ; <i32> [#uses=1] |
| 536 | %523 = lshr i32 %517, 16 ; <i32> [#uses=1] |
| 537 | %524 = or i32 %523, 256 ; <i32> [#uses=1] |
| 538 | %525 = and i32 %524, 511 ; <i32> [#uses=1] |
| 539 | %526 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %525; <i32*> [#uses=1] |
| 540 | %527 = load i32* %526, align 4 ; <i32> [#uses=1] |
| 541 | %528 = add i32 %527, %522 ; <i32> [#uses=1] |
| 542 | %529 = lshr i32 %517, 8 ; <i32> [#uses=1] |
| 543 | %530 = or i32 %529, 512 ; <i32> [#uses=1] |
| 544 | %531 = and i32 %530, 767 ; <i32> [#uses=1] |
| 545 | %532 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %531; <i32*> [#uses=1] |
| 546 | %533 = load i32* %532, align 4 ; <i32> [#uses=1] |
| 547 | %534 = xor i32 %528, %533 ; <i32> [#uses=1] |
| 548 | %535 = or i32 %517, 768 ; <i32> [#uses=1] |
| 549 | %536 = and i32 %535, 1023 ; <i32> [#uses=1] |
| 550 | %537 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %536; <i32*> [#uses=1] |
| 551 | %538 = load i32* %537, align 4 ; <i32> [#uses=1] |
| 552 | %539 = add i32 %534, %538 ; <i32> [#uses=1] |
| 553 | %540 = xor i32 %519, %493 ; <i32> [#uses=1] |
| 554 | %541 = xor i32 %540, %539 ; <i32> [#uses=5] |
| 555 | %542 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 556 | %543 = lshr i32 %541, 24 ; <i32> [#uses=1] |
| 557 | %544 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %543; <i32*> [#uses=1] |
| 558 | %545 = load i32* %544, align 4 ; <i32> [#uses=1] |
| 559 | %546 = lshr i32 %541, 16 ; <i32> [#uses=1] |
| 560 | %547 = or i32 %546, 256 ; <i32> [#uses=1] |
| 561 | %548 = and i32 %547, 511 ; <i32> [#uses=1] |
| 562 | %549 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %548; <i32*> [#uses=1] |
| 563 | %550 = load i32* %549, align 4 ; <i32> [#uses=1] |
| 564 | %551 = add i32 %550, %545 ; <i32> [#uses=1] |
| 565 | %552 = lshr i32 %541, 8 ; <i32> [#uses=1] |
| 566 | %553 = or i32 %552, 512 ; <i32> [#uses=1] |
| 567 | %554 = and i32 %553, 767 ; <i32> [#uses=1] |
| 568 | %555 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %554; <i32*> [#uses=1] |
| 569 | %556 = load i32* %555, align 4 ; <i32> [#uses=1] |
| 570 | %557 = xor i32 %551, %556 ; <i32> [#uses=1] |
| 571 | %558 = or i32 %541, 768 ; <i32> [#uses=1] |
| 572 | %559 = and i32 %558, 1023 ; <i32> [#uses=1] |
| 573 | %560 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %559; <i32*> [#uses=1] |
| 574 | %561 = load i32* %560, align 4 ; <i32> [#uses=1] |
| 575 | %562 = add i32 %557, %561 ; <i32> [#uses=1] |
| 576 | %563 = xor i32 %542, %517 ; <i32> [#uses=1] |
| 577 | %564 = xor i32 %563, %562 ; <i32> [#uses=5] |
| 578 | %565 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 6; <i32*> [#uses=1] |
| 579 | %566 = load i32* %565, align 4 ; <i32> [#uses=1] |
| 580 | %567 = lshr i32 %564, 24 ; <i32> [#uses=1] |
| 581 | %568 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %567; <i32*> [#uses=1] |
| 582 | %569 = load i32* %568, align 4 ; <i32> [#uses=1] |
| 583 | %570 = lshr i32 %564, 16 ; <i32> [#uses=1] |
| 584 | %571 = or i32 %570, 256 ; <i32> [#uses=1] |
| 585 | %572 = and i32 %571, 511 ; <i32> [#uses=1] |
| 586 | %573 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %572; <i32*> [#uses=1] |
| 587 | %574 = load i32* %573, align 4 ; <i32> [#uses=1] |
| 588 | %575 = add i32 %574, %569 ; <i32> [#uses=1] |
| 589 | %576 = lshr i32 %564, 8 ; <i32> [#uses=1] |
| 590 | %577 = or i32 %576, 512 ; <i32> [#uses=1] |
| 591 | %578 = and i32 %577, 767 ; <i32> [#uses=1] |
| 592 | %579 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %578; <i32*> [#uses=1] |
| 593 | %580 = load i32* %579, align 4 ; <i32> [#uses=1] |
| 594 | %581 = xor i32 %575, %580 ; <i32> [#uses=1] |
| 595 | %582 = or i32 %564, 768 ; <i32> [#uses=1] |
| 596 | %583 = and i32 %582, 1023 ; <i32> [#uses=1] |
| 597 | %584 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %583; <i32*> [#uses=1] |
| 598 | %585 = load i32* %584, align 4 ; <i32> [#uses=1] |
| 599 | %586 = add i32 %581, %585 ; <i32> [#uses=1] |
| 600 | %587 = xor i32 %566, %541 ; <i32> [#uses=1] |
| 601 | %588 = xor i32 %587, %586 ; <i32> [#uses=5] |
| 602 | %589 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 5; <i32*> [#uses=1] |
| 603 | %590 = load i32* %589, align 4 ; <i32> [#uses=1] |
| 604 | %591 = lshr i32 %588, 24 ; <i32> [#uses=1] |
| 605 | %592 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %591; <i32*> [#uses=1] |
| 606 | %593 = load i32* %592, align 4 ; <i32> [#uses=1] |
| 607 | %594 = lshr i32 %588, 16 ; <i32> [#uses=1] |
| 608 | %595 = or i32 %594, 256 ; <i32> [#uses=1] |
| 609 | %596 = and i32 %595, 511 ; <i32> [#uses=1] |
| 610 | %597 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %596; <i32*> [#uses=1] |
| 611 | %598 = load i32* %597, align 4 ; <i32> [#uses=1] |
| 612 | %599 = add i32 %598, %593 ; <i32> [#uses=1] |
| 613 | %600 = lshr i32 %588, 8 ; <i32> [#uses=1] |
| 614 | %601 = or i32 %600, 512 ; <i32> [#uses=1] |
| 615 | %602 = and i32 %601, 767 ; <i32> [#uses=1] |
| 616 | %603 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %602; <i32*> [#uses=1] |
| 617 | %604 = load i32* %603, align 4 ; <i32> [#uses=1] |
| 618 | %605 = xor i32 %599, %604 ; <i32> [#uses=1] |
| 619 | %606 = or i32 %588, 768 ; <i32> [#uses=1] |
| 620 | %607 = and i32 %606, 1023 ; <i32> [#uses=1] |
| 621 | %608 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %607; <i32*> [#uses=1] |
| 622 | %609 = load i32* %608, align 4 ; <i32> [#uses=1] |
| 623 | %610 = add i32 %605, %609 ; <i32> [#uses=1] |
| 624 | %611 = xor i32 %590, %564 ; <i32> [#uses=1] |
| 625 | %612 = xor i32 %611, %610 ; <i32> [#uses=5] |
| 626 | %613 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 4; <i32*> [#uses=1] |
| 627 | %614 = load i32* %613, align 4 ; <i32> [#uses=1] |
| 628 | %615 = lshr i32 %612, 24 ; <i32> [#uses=1] |
| 629 | %616 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %615; <i32*> [#uses=1] |
| 630 | %617 = load i32* %616, align 4 ; <i32> [#uses=1] |
| 631 | %618 = lshr i32 %612, 16 ; <i32> [#uses=1] |
| 632 | %619 = or i32 %618, 256 ; <i32> [#uses=1] |
| 633 | %620 = and i32 %619, 511 ; <i32> [#uses=1] |
| 634 | %621 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %620; <i32*> [#uses=1] |
| 635 | %622 = load i32* %621, align 4 ; <i32> [#uses=1] |
| 636 | %623 = add i32 %622, %617 ; <i32> [#uses=1] |
| 637 | %624 = lshr i32 %612, 8 ; <i32> [#uses=1] |
| 638 | %625 = or i32 %624, 512 ; <i32> [#uses=1] |
| 639 | %626 = and i32 %625, 767 ; <i32> [#uses=1] |
| 640 | %627 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %626; <i32*> [#uses=1] |
| 641 | %628 = load i32* %627, align 4 ; <i32> [#uses=1] |
| 642 | %629 = xor i32 %623, %628 ; <i32> [#uses=1] |
| 643 | %630 = or i32 %612, 768 ; <i32> [#uses=1] |
| 644 | %631 = and i32 %630, 1023 ; <i32> [#uses=1] |
| 645 | %632 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %631; <i32*> [#uses=1] |
| 646 | %633 = load i32* %632, align 4 ; <i32> [#uses=1] |
| 647 | %634 = add i32 %629, %633 ; <i32> [#uses=1] |
| 648 | %635 = xor i32 %614, %588 ; <i32> [#uses=1] |
| 649 | %636 = xor i32 %635, %634 ; <i32> [#uses=5] |
| 650 | %637 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 3; <i32*> [#uses=1] |
| 651 | %638 = load i32* %637, align 4 ; <i32> [#uses=1] |
| 652 | %639 = lshr i32 %636, 24 ; <i32> [#uses=1] |
| 653 | %640 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %639; <i32*> [#uses=1] |
| 654 | %641 = load i32* %640, align 4 ; <i32> [#uses=1] |
| 655 | %642 = lshr i32 %636, 16 ; <i32> [#uses=1] |
| 656 | %643 = or i32 %642, 256 ; <i32> [#uses=1] |
| 657 | %644 = and i32 %643, 511 ; <i32> [#uses=1] |
| 658 | %645 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %644; <i32*> [#uses=1] |
| 659 | %646 = load i32* %645, align 4 ; <i32> [#uses=1] |
| 660 | %647 = add i32 %646, %641 ; <i32> [#uses=1] |
| 661 | %648 = lshr i32 %636, 8 ; <i32> [#uses=1] |
| 662 | %649 = or i32 %648, 512 ; <i32> [#uses=1] |
| 663 | %650 = and i32 %649, 767 ; <i32> [#uses=1] |
| 664 | %651 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %650; <i32*> [#uses=1] |
| 665 | %652 = load i32* %651, align 4 ; <i32> [#uses=1] |
| 666 | %653 = xor i32 %647, %652 ; <i32> [#uses=1] |
| 667 | %654 = or i32 %636, 768 ; <i32> [#uses=1] |
| 668 | %655 = and i32 %654, 1023 ; <i32> [#uses=1] |
| 669 | %656 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %655; <i32*> [#uses=1] |
| 670 | %657 = load i32* %656, align 4 ; <i32> [#uses=1] |
| 671 | %658 = add i32 %653, %657 ; <i32> [#uses=1] |
| 672 | %659 = xor i32 %638, %612 ; <i32> [#uses=1] |
| 673 | %660 = xor i32 %659, %658 ; <i32> [#uses=5] |
| 674 | %661 = load i32* undef, align 4 ; <i32> [#uses=1] |
| 675 | %662 = lshr i32 %660, 24 ; <i32> [#uses=1] |
| 676 | %663 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %662; <i32*> [#uses=1] |
| 677 | %664 = load i32* %663, align 4 ; <i32> [#uses=1] |
| 678 | %665 = lshr i32 %660, 16 ; <i32> [#uses=1] |
| 679 | %666 = or i32 %665, 256 ; <i32> [#uses=1] |
| 680 | %667 = and i32 %666, 511 ; <i32> [#uses=1] |
| 681 | %668 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %667; <i32*> [#uses=1] |
| 682 | %669 = load i32* %668, align 4 ; <i32> [#uses=1] |
| 683 | %670 = add i32 %669, %664 ; <i32> [#uses=1] |
| 684 | %671 = lshr i32 %660, 8 ; <i32> [#uses=1] |
| 685 | %672 = or i32 %671, 512 ; <i32> [#uses=1] |
| 686 | %673 = and i32 %672, 767 ; <i32> [#uses=1] |
| 687 | %674 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %673; <i32*> [#uses=1] |
| 688 | %675 = load i32* %674, align 4 ; <i32> [#uses=1] |
| 689 | %676 = xor i32 %670, %675 ; <i32> [#uses=1] |
| 690 | %677 = or i32 %660, 768 ; <i32> [#uses=1] |
| 691 | %678 = and i32 %677, 1023 ; <i32> [#uses=1] |
| 692 | %679 = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %678; <i32*> [#uses=1] |
| 693 | %680 = load i32* %679, align 4 ; <i32> [#uses=1] |
| 694 | %681 = add i32 %676, %680 ; <i32> [#uses=1] |
| 695 | %682 = xor i32 %661, %636 ; <i32> [#uses=1] |
| 696 | %683 = xor i32 %682, %681 ; <i32> [#uses=5] |
| 697 | %684 = getelementptr %struct.BF_KEY* %key, i32 0, i32 0, i32 1; <i32*> [#uses=1] |
| 698 | br label %bb2 |
| 699 | |
| 700 | bb2: ; preds = %bb1, %bb |
| 701 | %.pn2.in = phi i32* [ %329, %bb ], [ %0, %bb1 ]; <i32*> [#uses=1] |
| 702 | %.pn3 = phi i32 [ %328, %bb ], [ %683, %bb1 ]; <i32> [#uses=1] |
| 703 | %.pn15.in = phi i32 [ %328, %bb ], [ %683, %bb1 ]; <i32> [#uses=1] |
| 704 | %.pn14.in.in.in = phi i32 [ %328, %bb ], [ %683, %bb1 ]; <i32> [#uses=1] |
| 705 | %.pn13.in.in.in = phi i32 [ %328, %bb ], [ %683, %bb1 ]; <i32> [#uses=1] |
| 706 | %.pn10.in.in = phi i32 [ %328, %bb ], [ %683, %bb1 ]; <i32> [#uses=1] |
| 707 | %.pn4.in = phi i32* [ null, %bb ], [ %684, %bb1 ]; <i32*> [#uses=1] |
| 708 | %.pn5 = phi i32 [ 0, %bb ], [ %660, %bb1 ]; <i32> [#uses=1] |
| 709 | %.pn14.in.in = lshr i32 %.pn14.in.in.in, 16; <i32> [#uses=1] |
| 710 | %.pn14.in = or i32 %.pn14.in.in, 256 ; <i32> [#uses=1] |
| 711 | %.pn13.in.in = lshr i32 %.pn13.in.in.in, 8; <i32> [#uses=1] |
| 712 | %.pn15 = lshr i32 %.pn15.in, 24 ; <i32> [#uses=1] |
| 713 | %.pn14 = and i32 %.pn14.in, 511 ; <i32> [#uses=1] |
| 714 | %.pn13.in = or i32 %.pn13.in.in, 512 ; <i32> [#uses=1] |
| 715 | %.pn11.in = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %.pn15; <i32*> [#uses=1] |
| 716 | %.pn12.in = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %.pn14; <i32*> [#uses=1] |
| 717 | %.pn13 = and i32 %.pn13.in, 767 ; <i32> [#uses=1] |
| 718 | %.pn10.in = or i32 %.pn10.in.in, 768 ; <i32> [#uses=1] |
| 719 | %.pn11 = load i32* %.pn11.in ; <i32> [#uses=1] |
| 720 | %.pn12 = load i32* %.pn12.in ; <i32> [#uses=1] |
| 721 | %.pn9.in = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %.pn13; <i32*> [#uses=1] |
| 722 | %.pn10 = and i32 %.pn10.in, 1023 ; <i32> [#uses=1] |
| 723 | %.pn8 = add i32 %.pn12, %.pn11 ; <i32> [#uses=1] |
| 724 | %.pn9 = load i32* %.pn9.in ; <i32> [#uses=1] |
| 725 | %.pn7.in = getelementptr %struct.BF_KEY* %key, i32 0, i32 1, i32 %.pn10; <i32*> [#uses=1] |
| 726 | %.pn6 = xor i32 %.pn8, %.pn9 ; <i32> [#uses=1] |
| 727 | %.pn7 = load i32* %.pn7.in ; <i32> [#uses=1] |
| 728 | %.pn4 = load i32* %.pn4.in ; <i32> [#uses=1] |
| 729 | %.pn2 = load i32* %.pn2.in ; <i32> [#uses=1] |
| 730 | %.pn = add i32 %.pn6, %.pn7 ; <i32> [#uses=1] |
| 731 | %r.0 = xor i32 %.pn2, %.pn3 ; <i32> [#uses=1] |
| 732 | %.pn1 = xor i32 %.pn, %.pn5 ; <i32> [#uses=1] |
| 733 | %l.0 = xor i32 %.pn1, %.pn4 ; <i32> [#uses=1] |
| 734 | store i32 %l.0, i32* undef, align 4 |
| 735 | store i32 %r.0, i32* %data, align 4 |
| 736 | ret void |
| 737 | } |