| OLD | NEW |
| (Empty) |
| 1 ; RUN: llc < %s | |
| 2 | |
| 3 ; regression check for emscripten #3088 - we were not clearing BlockChanges in i
64 lowering | |
| 4 | |
| 5 ; ModuleID = 'waka.bc' | |
| 6 target datalayout = "e-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64
:64:64-p:32:32:32-v128:32:128-n32-S128" | |
| 7 target triple = "asmjs-unknown-emscripten" | |
| 8 | |
| 9 %"class.ZenLib::uint128" = type <{ i64, i64 }> | |
| 10 | |
| 11 @.str = private unnamed_addr constant [15 x i8] c"hello, world!\0A\00", align 1 | |
| 12 | |
| 13 @.str368164 = external hidden unnamed_addr constant [10 x i8], align 1 | |
| 14 @.str398167 = external hidden unnamed_addr constant [6 x i8], align 1 | |
| 15 @.str718199 = external hidden unnamed_addr constant [9 x i8], align 1 | |
| 16 @.str738201 = external hidden unnamed_addr constant [21 x i8], align 1 | |
| 17 @.str748202 = external hidden unnamed_addr constant [26 x i8], align 1 | |
| 18 @.str758203 = external hidden unnamed_addr constant [21 x i8], align 1 | |
| 19 @.str768204 = external hidden unnamed_addr constant [8 x i8], align 1 | |
| 20 @.str778205 = external hidden unnamed_addr constant [14 x i8], align 1 | |
| 21 @.str788206 = external hidden unnamed_addr constant [22 x i8], align 1 | |
| 22 @.str798207 = external hidden unnamed_addr constant [25 x i8], align 1 | |
| 23 @.str808208 = external hidden unnamed_addr constant [24 x i8], align 1 | |
| 24 @.str818209 = external hidden unnamed_addr constant [20 x i8], align 1 | |
| 25 @.str828210 = external hidden unnamed_addr constant [34 x i8], align 1 | |
| 26 @.str838211 = external hidden unnamed_addr constant [31 x i8], align 1 | |
| 27 @.str848212 = external hidden unnamed_addr constant [29 x i8], align 1 | |
| 28 @.str858213 = external hidden unnamed_addr constant [44 x i8], align 1 | |
| 29 @.str868214 = external hidden unnamed_addr constant [12 x i8], align 1 | |
| 30 @.str908218 = external hidden unnamed_addr constant [21 x i8], align 1 | |
| 31 @.str918219 = external hidden unnamed_addr constant [8 x i8], align 1 | |
| 32 @.str928220 = external hidden unnamed_addr constant [6 x i8], align 1 | |
| 33 @.str9210864 = external hidden unnamed_addr constant [5 x i8], align 1 | |
| 34 @.str514367 = external hidden unnamed_addr constant [5 x i8], align 1 | |
| 35 @.str214409 = external hidden unnamed_addr constant [4 x i8], align 1 | |
| 36 @.str20216493 = external hidden unnamed_addr constant [3 x i8], align 1 | |
| 37 @.str2017231 = external hidden unnamed_addr constant [11 x i8], align 1 | |
| 38 @.str2317234 = external hidden unnamed_addr constant [14 x i8], align 1 | |
| 39 @.str2417235 = external hidden unnamed_addr constant [4 x i8], align 1 | |
| 40 @.str2717238 = external hidden unnamed_addr constant [5 x i8], align 1 | |
| 41 @.str3217243 = external hidden unnamed_addr constant [4 x i8], align 1 | |
| 42 @.str1717689 = external hidden unnamed_addr constant [5 x i8], align 1 | |
| 43 @.str2104 = external hidden unnamed_addr constant [1 x i8], align 1 | |
| 44 | |
| 45 ; Function Attrs: nounwind readonly | |
| 46 define hidden i8* @_ZN12MediaInfoLib22Mxf_EssenceCompressionEN6ZenLib7uint128E(%
"class.ZenLib::uint128"* nocapture readonly %EssenceCompression) #0 { | |
| 47 entry: | |
| 48 %hi = getelementptr inbounds %"class.ZenLib::uint128", %"class.ZenLib::uint128
"* %EssenceCompression, i32 0, i32 1 | |
| 49 %0 = load i64, i64* %hi, align 1 | |
| 50 %and = and i64 %0, -256 | |
| 51 %cmp = icmp eq i64 %and, 436333716306985216 | |
| 52 br i1 %cmp, label %lor.lhs.false, label %return | |
| 53 | |
| 54 lor.lhs.false: ; preds = %entry | |
| 55 %lo = getelementptr inbounds %"class.ZenLib::uint128", %"class.ZenLib::uint128
"* %EssenceCompression, i32 0, i32 0 | |
| 56 %1 = load i64, i64* %lo, align 1 | |
| 57 %and1 = and i64 %1, -72057594037927936 | |
| 58 switch i64 %and1, label %return [ | |
| 59 i64 288230376151711744, label %if.end | |
| 60 i64 1008806316530991104, label %if.end | |
| 61 ] | |
| 62 | |
| 63 if.end: ; preds = %lor.lhs.false, %lor
.lhs.false | |
| 64 %shr = lshr i64 %1, 56 | |
| 65 %conv = trunc i64 %shr to i32 | |
| 66 %and10 = lshr i64 %1, 48 | |
| 67 %and14 = lshr i64 %1, 40 | |
| 68 %and18 = lshr i64 %1, 32 | |
| 69 %conv20 = trunc i64 %and18 to i32 | |
| 70 %and22 = lshr i64 %1, 24 | |
| 71 %and26 = lshr i64 %1, 16 | |
| 72 %conv28 = trunc i64 %and26 to i32 | |
| 73 %and30 = lshr i64 %1, 8 | |
| 74 %conv32 = trunc i64 %and30 to i32 | |
| 75 switch i32 %conv, label %return [ | |
| 76 i32 4, label %sw.bb | |
| 77 i32 14, label %sw.bb112 | |
| 78 ] | |
| 79 | |
| 80 sw.bb: ; preds = %if.end | |
| 81 %conv12 = trunc i64 %and10 to i32 | |
| 82 %conv34 = and i32 %conv12, 255 | |
| 83 switch i32 %conv34, label %return [ | |
| 84 i32 1, label %sw.bb35 | |
| 85 i32 2, label %sw.bb64 | |
| 86 ] | |
| 87 | |
| 88 sw.bb35: ; preds = %sw.bb | |
| 89 %conv36 = and i64 %and14, 255 | |
| 90 %cond12 = icmp eq i64 %conv36, 2 | |
| 91 br i1 %cond12, label %sw.bb37, label %return | |
| 92 | |
| 93 sw.bb37: ; preds = %sw.bb35 | |
| 94 %conv38 = and i32 %conv20, 255 | |
| 95 switch i32 %conv38, label %return [ | |
| 96 i32 1, label %sw.bb39 | |
| 97 i32 2, label %sw.bb42 | |
| 98 ] | |
| 99 | |
| 100 sw.bb39: ; preds = %sw.bb37 | |
| 101 %conv40 = and i64 %and22, 255 | |
| 102 %cond14 = icmp eq i64 %conv40, 1 | |
| 103 %. = select i1 %cond14, i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str2
14409, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104,
i32 0, i32 0) | |
| 104 br label %return | |
| 105 | |
| 106 sw.bb42: ; preds = %sw.bb37 | |
| 107 %2 = trunc i64 %and22 to i32 | |
| 108 %conv43 = and i32 %2, 255 | |
| 109 switch i32 %conv43, label %sw.default61 [ | |
| 110 i32 1, label %sw.bb44 | |
| 111 i32 2, label %return | |
| 112 i32 3, label %sw.bb56 | |
| 113 i32 113, label %sw.bb60 | |
| 114 ] | |
| 115 | |
| 116 sw.bb44: ; preds = %sw.bb42 | |
| 117 %conv45 = and i32 %conv28, 255 | |
| 118 switch i32 %conv45, label %sw.default54 [ | |
| 119 i32 0, label %return | |
| 120 i32 1, label %return | |
| 121 i32 2, label %return | |
| 122 i32 3, label %return | |
| 123 i32 4, label %return | |
| 124 i32 17, label %return | |
| 125 i32 32, label %sw.bb52 | |
| 126 i32 48, label %sw.bb53 | |
| 127 i32 49, label %sw.bb53 | |
| 128 i32 50, label %sw.bb53 | |
| 129 i32 51, label %sw.bb53 | |
| 130 i32 52, label %sw.bb53 | |
| 131 i32 53, label %sw.bb53 | |
| 132 i32 54, label %sw.bb53 | |
| 133 i32 55, label %sw.bb53 | |
| 134 i32 56, label %sw.bb53 | |
| 135 i32 57, label %sw.bb53 | |
| 136 i32 58, label %sw.bb53 | |
| 137 i32 59, label %sw.bb53 | |
| 138 i32 60, label %sw.bb53 | |
| 139 i32 61, label %sw.bb53 | |
| 140 i32 62, label %sw.bb53 | |
| 141 i32 63, label %sw.bb53 | |
| 142 ] | |
| 143 | |
| 144 sw.bb52: ; preds = %sw.bb44 | |
| 145 br label %return | |
| 146 | |
| 147 sw.bb53: ; preds = %sw.bb44, %sw.bb44,
%sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44,
%sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44 | |
| 148 br label %return | |
| 149 | |
| 150 sw.default54: ; preds = %sw.bb44 | |
| 151 br label %return | |
| 152 | |
| 153 sw.bb56: ; preds = %sw.bb42 | |
| 154 %conv57 = and i64 %and26, 255 | |
| 155 %cond13 = icmp eq i64 %conv57, 1 | |
| 156 %.35 = select i1 %cond13, i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.
str368164, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str2
104, i32 0, i32 0) | |
| 157 br label %return | |
| 158 | |
| 159 sw.bb60: ; preds = %sw.bb42 | |
| 160 br label %return | |
| 161 | |
| 162 sw.default61: ; preds = %sw.bb42 | |
| 163 br label %return | |
| 164 | |
| 165 sw.bb64: ; preds = %sw.bb | |
| 166 %conv65 = and i64 %and14, 255 | |
| 167 %cond9 = icmp eq i64 %conv65, 2 | |
| 168 br i1 %cond9, label %sw.bb66, label %return | |
| 169 | |
| 170 sw.bb66: ; preds = %sw.bb64 | |
| 171 %conv67 = and i32 %conv20, 255 | |
| 172 switch i32 %conv67, label %return [ | |
| 173 i32 1, label %sw.bb68 | |
| 174 i32 2, label %sw.bb75 | |
| 175 ] | |
| 176 | |
| 177 sw.bb68: ; preds = %sw.bb66 | |
| 178 %3 = trunc i64 %and22 to i32 | |
| 179 %conv69 = and i32 %3, 255 | |
| 180 switch i32 %conv69, label %sw.default74 [ | |
| 181 i32 0, label %return | |
| 182 i32 1, label %return | |
| 183 i32 126, label %return | |
| 184 i32 127, label %return | |
| 185 ] | |
| 186 | |
| 187 sw.default74: ; preds = %sw.bb68 | |
| 188 br label %return | |
| 189 | |
| 190 sw.bb75: ; preds = %sw.bb66 | |
| 191 %conv76 = and i64 %and22, 255 | |
| 192 %cond10 = icmp eq i64 %conv76, 3 | |
| 193 br i1 %cond10, label %sw.bb77, label %return | |
| 194 | |
| 195 sw.bb77: ; preds = %sw.bb75 | |
| 196 %conv78 = and i32 %conv28, 255 | |
| 197 switch i32 %conv78, label %return [ | |
| 198 i32 1, label %sw.bb79 | |
| 199 i32 2, label %sw.bb84 | |
| 200 i32 3, label %sw.bb92 | |
| 201 i32 4, label %sw.bb96 | |
| 202 ] | |
| 203 | |
| 204 sw.bb79: ; preds = %sw.bb77 | |
| 205 %conv80 = and i32 %conv32, 255 | |
| 206 switch i32 %conv80, label %sw.default83 [ | |
| 207 i32 1, label %return | |
| 208 i32 16, label %sw.bb82 | |
| 209 ] | |
| 210 | |
| 211 sw.bb82: ; preds = %sw.bb79 | |
| 212 br label %return | |
| 213 | |
| 214 sw.default83: ; preds = %sw.bb79 | |
| 215 br label %return | |
| 216 | |
| 217 sw.bb84: ; preds = %sw.bb77 | |
| 218 %conv85 = and i32 %conv32, 255 | |
| 219 switch i32 %conv85, label %sw.default91 [ | |
| 220 i32 1, label %return | |
| 221 i32 4, label %sw.bb87 | |
| 222 i32 5, label %sw.bb88 | |
| 223 i32 6, label %sw.bb89 | |
| 224 i32 28, label %sw.bb90 | |
| 225 ] | |
| 226 | |
| 227 sw.bb87: ; preds = %sw.bb84 | |
| 228 br label %return | |
| 229 | |
| 230 sw.bb88: ; preds = %sw.bb84 | |
| 231 br label %return | |
| 232 | |
| 233 sw.bb89: ; preds = %sw.bb84 | |
| 234 br label %return | |
| 235 | |
| 236 sw.bb90: ; preds = %sw.bb84 | |
| 237 br label %return | |
| 238 | |
| 239 sw.default91: ; preds = %sw.bb84 | |
| 240 br label %return | |
| 241 | |
| 242 sw.bb92: ; preds = %sw.bb77 | |
| 243 %conv93 = and i64 %and30, 255 | |
| 244 %cond11 = icmp eq i64 %conv93, 1 | |
| 245 %.36 = select i1 %cond11, i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.
str778205, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str2
104, i32 0, i32 0) | |
| 246 br label %return | |
| 247 | |
| 248 sw.bb96: ; preds = %sw.bb77 | |
| 249 %conv97 = and i32 %conv32, 255 | |
| 250 switch i32 %conv97, label %sw.default106 [ | |
| 251 i32 1, label %return | |
| 252 i32 2, label %sw.bb99 | |
| 253 i32 3, label %sw.bb100 | |
| 254 i32 4, label %sw.bb101 | |
| 255 i32 5, label %sw.bb102 | |
| 256 i32 6, label %sw.bb103 | |
| 257 i32 7, label %sw.bb104 | |
| 258 i32 8, label %sw.bb105 | |
| 259 ] | |
| 260 | |
| 261 sw.bb99: ; preds = %sw.bb96 | |
| 262 br label %return | |
| 263 | |
| 264 sw.bb100: ; preds = %sw.bb96 | |
| 265 br label %return | |
| 266 | |
| 267 sw.bb101: ; preds = %sw.bb96 | |
| 268 br label %return | |
| 269 | |
| 270 sw.bb102: ; preds = %sw.bb96 | |
| 271 br label %return | |
| 272 | |
| 273 sw.bb103: ; preds = %sw.bb96 | |
| 274 br label %return | |
| 275 | |
| 276 sw.bb104: ; preds = %sw.bb96 | |
| 277 br label %return | |
| 278 | |
| 279 sw.bb105: ; preds = %sw.bb96 | |
| 280 br label %return | |
| 281 | |
| 282 sw.default106: ; preds = %sw.bb96 | |
| 283 br label %return | |
| 284 | |
| 285 sw.bb112: ; preds = %if.end | |
| 286 %4 = trunc i64 %and10 to i32 | |
| 287 %conv113 = and i32 %4, 255 | |
| 288 switch i32 %conv113, label %return [ | |
| 289 i32 4, label %sw.bb114 | |
| 290 i32 6, label %sw.bb127 | |
| 291 ] | |
| 292 | |
| 293 sw.bb114: ; preds = %sw.bb112 | |
| 294 %conv115 = and i64 %and14, 255 | |
| 295 %cond5 = icmp eq i64 %conv115, 2 | |
| 296 %conv117 = and i64 %and18, 255 | |
| 297 %cond6 = icmp eq i64 %conv117, 1 | |
| 298 %or.cond = and i1 %cond5, %cond6 | |
| 299 %conv119 = and i64 %and22, 255 | |
| 300 %cond7 = icmp eq i64 %conv119, 2 | |
| 301 %or.cond39 = and i1 %or.cond, %cond7 | |
| 302 br i1 %or.cond39, label %sw.bb120, label %return | |
| 303 | |
| 304 sw.bb120: ; preds = %sw.bb114 | |
| 305 %conv121 = and i64 %and26, 255 | |
| 306 %cond8 = icmp eq i64 %conv121, 4 | |
| 307 %.37 = select i1 %cond8, i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str
514367, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104
, i32 0, i32 0) | |
| 308 br label %return | |
| 309 | |
| 310 sw.bb127: ; preds = %sw.bb112 | |
| 311 %conv128 = and i64 %and14, 255 | |
| 312 %cond = icmp eq i64 %conv128, 4 | |
| 313 %conv130 = and i64 %and18, 255 | |
| 314 %cond1 = icmp eq i64 %conv130, 1 | |
| 315 %or.cond40 = and i1 %cond, %cond1 | |
| 316 %conv132 = and i64 %and22, 255 | |
| 317 %cond2 = icmp eq i64 %conv132, 2 | |
| 318 %or.cond41 = and i1 %or.cond40, %cond2 | |
| 319 %conv134 = and i64 %and26, 255 | |
| 320 %cond3 = icmp eq i64 %conv134, 4 | |
| 321 %or.cond42 = and i1 %or.cond41, %cond3 | |
| 322 br i1 %or.cond42, label %sw.bb135, label %return | |
| 323 | |
| 324 sw.bb135: ; preds = %sw.bb127 | |
| 325 %conv136 = and i64 %and30, 255 | |
| 326 %cond4 = icmp eq i64 %conv136, 2 | |
| 327 %.38 = select i1 %cond4, i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.s
tr868214, i32 0, i32 0), i8* getelementptr inbounds ([1 x i8], [1 x i8]* @.str21
04, i32 0, i32 0) | |
| 328 br label %return | |
| 329 | |
| 330 return: ; preds = %sw.bb135, %sw.bb127
, %sw.bb120, %sw.bb114, %sw.bb112, %sw.default106, %sw.bb105, %sw.bb104, %sw.bb1
03, %sw.bb102, %sw.bb101, %sw.bb100, %sw.bb99, %sw.bb96, %sw.bb92, %sw.default91
, %sw.bb90, %sw.bb89, %sw.bb88, %sw.bb87, %sw.bb84, %sw.default83, %sw.bb82, %sw
.bb79, %sw.bb77, %sw.bb75, %sw.default74, %sw.bb68, %sw.bb68, %sw.bb68, %sw.bb68
, %sw.bb66, %sw.bb64, %sw.default61, %sw.bb60, %sw.bb56, %sw.default54, %sw.bb53
, %sw.bb52, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb44, %sw.bb42
, %sw.bb39, %sw.bb37, %sw.bb35, %sw.bb, %if.end, %lor.lhs.false, %entry | |
| 331 %retval.0 = phi i8* [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i
32 0, i32 0), %sw.default106 ], [ getelementptr inbounds ([44 x i8], [44 x i8]*
@.str858213, i32 0, i32 0), %sw.bb105 ], [ getelementptr inbounds ([29 x i8], [2
9 x i8]* @.str848212, i32 0, i32 0), %sw.bb104 ], [ getelementptr inbounds ([31
x i8], [31 x i8]* @.str838211, i32 0, i32 0), %sw.bb103 ], [ getelementptr inbou
nds ([34 x i8], [34 x i8]* @.str828210, i32 0, i32 0), %sw.bb102 ], [ getelement
ptr inbounds ([20 x i8], [20 x i8]* @.str818209, i32 0, i32 0), %sw.bb101 ], [ g
etelementptr inbounds ([24 x i8], [24 x i8]* @.str808208, i32 0, i32 0), %sw.bb1
00 ], [ getelementptr inbounds ([25 x i8], [25 x i8]* @.str798207, i32 0, i32 0)
, %sw.bb99 ], [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i3
2 0), %sw.default91 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str768204
, i32 0, i32 0), %sw.bb90 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.s
tr758203, i32 0, i32 0), %sw.bb89 ], [ getelementptr inbounds ([26 x i8], [26 x
i8]* @.str748202, i32 0, i32 0), %sw.bb88 ], [ getelementptr inbounds ([21 x i8]
, [21 x i8]* @.str738201, i32 0, i32 0), %sw.bb87 ], [ getelementptr inbounds ([
1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.default83 ], [ getelementptr in
bounds ([9 x i8], [9 x i8]* @.str718199, i32 0, i32 0), %sw.bb82 ], [ getelement
ptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.default74 ], [ g
etelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.default
61 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str514367, i32 0, i32 0),
%sw.bb60 ], [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32
0), %sw.default54 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str2417235,
i32 0, i32 0), %sw.bb53 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.st
r2317234, i32 0, i32 0), %sw.bb52 ], [ getelementptr inbounds ([1 x i8], [1 x i8
]* @.str2104, i32 0, i32 0), %lor.lhs.false ], [ getelementptr inbounds ([1 x i8
], [1 x i8]* @.str2104, i32 0, i32 0), %entry ], [ %., %sw.bb39 ], [ getelementp
tr inbounds ([11 x i8], [11 x i8]* @.str2017231, i32 0, i32 0), %sw.bb44 ], [ ge
telementptr inbounds ([11 x i8], [11 x i8]* @.str2017231, i32 0, i32 0), %sw.bb4
4 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str2017231, i32 0, i32 0)
, %sw.bb44 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str2017231, i32
0, i32 0), %sw.bb44 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str2017
231, i32 0, i32 0), %sw.bb44 ], [ getelementptr inbounds ([11 x i8], [11 x i8]*
@.str2017231, i32 0, i32 0), %sw.bb44 ], [ getelementptr inbounds ([3 x i8], [3
x i8]* @.str20216493, i32 0, i32 0), %sw.bb42 ], [ %.35, %sw.bb56 ], [ getelemen
tptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb37 ], [ getel
ementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb35 ], [ g
etelementptr inbounds ([4 x i8], [4 x i8]* @.str3217243, i32 0, i32 0), %sw.bb68
], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str3217243, i32 0, i32 0), %
sw.bb68 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str3217243, i32 0, i3
2 0), %sw.bb68 ], [ getelementptr inbounds ([4 x i8], [4 x i8]* @.str3217243, i3
2 0, i32 0), %sw.bb68 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str3981
67, i32 0, i32 0), %sw.bb79 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.s
tr2717238, i32 0, i32 0), %sw.bb84 ], [ %.36, %sw.bb92 ], [ getelementptr inboun
ds ([22 x i8], [22 x i8]* @.str788206, i32 0, i32 0), %sw.bb96 ], [ getelementpt
r inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb77 ], [ geteleme
ntptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb75 ], [ gete
lementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb66 ], [
getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb64 ]
, [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb
], [ %.37, %sw.bb120 ], [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104
, i32 0, i32 0), %sw.bb114 ], [ %.38, %sw.bb135 ], [ getelementptr inbounds ([1
x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb127 ], [ getelementptr inbounds
([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %sw.bb112 ], [ getelementptr inb
ounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %if.end ] | |
| 332 ret i8* %retval.0 | |
| 333 } | |
| 334 | |
| 335 ; Function Attrs: nounwind readonly | |
| 336 define hidden i8* @_ZN12MediaInfoLib27Mxf_Sequence_DataDefinitionEN6ZenLib7uint1
28E(%"class.ZenLib::uint128"* nocapture readonly %DataDefinition) #0 { | |
| 337 entry: | |
| 338 %lo = getelementptr inbounds %"class.ZenLib::uint128", %"class.ZenLib::uint128
"* %DataDefinition, i32 0, i32 0 | |
| 339 %0 = load i64, i64* %lo, align 1 | |
| 340 %and = lshr i64 %0, 32 | |
| 341 %conv = trunc i64 %and to i32 | |
| 342 %and2 = lshr i64 %0, 24 | |
| 343 %conv5 = and i32 %conv, 255 | |
| 344 switch i32 %conv5, label %return [ | |
| 345 i32 1, label %sw.bb | |
| 346 i32 2, label %sw.bb9 | |
| 347 ] | |
| 348 | |
| 349 sw.bb: ; preds = %entry | |
| 350 %conv4 = trunc i64 %and2 to i32 | |
| 351 %conv6 = and i32 %conv4, 255 | |
| 352 switch i32 %conv6, label %sw.default [ | |
| 353 i32 1, label %return | |
| 354 i32 2, label %return | |
| 355 i32 3, label %return | |
| 356 i32 16, label %sw.bb8 | |
| 357 ] | |
| 358 | |
| 359 sw.bb8: ; preds = %sw.bb | |
| 360 br label %return | |
| 361 | |
| 362 sw.default: ; preds = %sw.bb | |
| 363 br label %return | |
| 364 | |
| 365 sw.bb9: ; preds = %entry | |
| 366 %1 = trunc i64 %and2 to i32 | |
| 367 %conv10 = and i32 %1, 255 | |
| 368 switch i32 %conv10, label %sw.default14 [ | |
| 369 i32 1, label %return | |
| 370 i32 2, label %sw.bb12 | |
| 371 i32 3, label %sw.bb13 | |
| 372 ] | |
| 373 | |
| 374 sw.bb12: ; preds = %sw.bb9 | |
| 375 br label %return | |
| 376 | |
| 377 sw.bb13: ; preds = %sw.bb9 | |
| 378 br label %return | |
| 379 | |
| 380 sw.default14: ; preds = %sw.bb9 | |
| 381 br label %return | |
| 382 | |
| 383 return: ; preds = %sw.default14, %sw.b
b13, %sw.bb12, %sw.bb9, %sw.default, %sw.bb8, %sw.bb, %sw.bb, %sw.bb, %entry | |
| 384 %retval.0 = phi i8* [ getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i
32 0, i32 0), %sw.default14 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.s
tr1717689, i32 0, i32 0), %sw.bb13 ], [ getelementptr inbounds ([6 x i8], [6 x i
8]* @.str928220, i32 0, i32 0), %sw.bb12 ], [ getelementptr inbounds ([1 x i8],
[1 x i8]* @.str2104, i32 0, i32 0), %sw.default ], [ getelementptr inbounds ([21
x i8], [21 x i8]* @.str908218, i32 0, i32 0), %sw.bb8 ], [ getelementptr inboun
ds ([5 x i8], [5 x i8]* @.str9210864, i32 0, i32 0), %sw.bb ], [ getelementptr i
nbounds ([5 x i8], [5 x i8]* @.str9210864, i32 0, i32 0), %sw.bb ], [ getelement
ptr inbounds ([5 x i8], [5 x i8]* @.str9210864, i32 0, i32 0), %sw.bb ], [ getel
ementptr inbounds ([8 x i8], [8 x i8]* @.str918219, i32 0, i32 0), %sw.bb9 ], [
getelementptr inbounds ([1 x i8], [1 x i8]* @.str2104, i32 0, i32 0), %entry ] | |
| 385 ret i8* %retval.0 | |
| 386 } | |
| 387 | |
| 388 | |
| 389 define i32 @main() { | |
| 390 entry: | |
| 391 %retval = alloca i32, align 4 | |
| 392 store i32 0, i32* %retval | |
| 393 %call = call i32 (i8*, ...) @printf(i8* getelementptr inbounds ([15 x i8], [15
x i8]* @.str, i32 0, i32 0)) | |
| 394 ret i32 0 | |
| 395 } | |
| 396 | |
| 397 declare i32 @printf(i8*, ...) | |
| 398 | |
| 399 attributes #0 = { nounwind readonly } | |
| OLD | NEW |