nop:asm/nop: :flag:=: :flag:signed<: :flag:signed>: :flag:unsigned<: :flag:unsigned>: :flag:carry: f#:#f:label/f:asm/._#f!colon: goto f:#f:nofallthrough:jump/f:asm/jmp ._#f: goto f if =:#f:jump/f::#f:jump/f::asm/ja ._#f: goto f if !unsigned>:#f:jump/f::asm/jbe ._#f: goto f if unsigned<:#f:jump/f::#f:jump/f::asm/jg ._#f: goto f if !signed>:#f:jump/f::asm/jle ._#f: goto f if signed<:#f:jump/f:r=int64:r=int64:r=int64:#n:asm/mov $#n,>r: r = -n:>r=int64:#n:asm/mov $-#n,>r: r = s:>r=int64:r: r = &n:>r=int64:#n:asm/lea #n(%rip),>r: r = ~r:inplace>r=int64:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r += n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: r ++ :inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: r += n + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r - n:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r += s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: r += s + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r - s:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = s + n:>r=int64:r: r = s + t:>r=int64:r: r = s + t + n:>r=int64:r: r += t + n:>r=int64:r: (uint32) r += s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: (uint32) r += s + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r &= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r |= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r ^= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r ^= -n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r <<<= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r >>>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r <<= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (int64) r >>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint64) r >>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r <<<= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r >>>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r <<= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r >>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (int32) r >>= n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r &= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r |= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r ^= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r <<= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r <<<= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r >>>= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (int64) r >>= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint64) r >>= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = s & 255:>r=int64:r%32: r = (s >> 8) & 255:>r=int64#1,2,3,4,7,14,15:r%32: assign 1 to r = (s >> 8) & 255:>r=int64#1:r%32: assign 2 to r = (s >> 8) & 255:>r=int64#2:r%32: assign 15 to r = (s >> 8) & 255:>r=int64#15:r%32: r = (r.t) << n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = (t r) >> n:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = (r.t) << s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = (t r) >> s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = s * n:>r=int64:r:>?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r *= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (int128) t r = r * s:>t=int64#3:inplace>r=int64#7:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint128) t r = r * s:>t=int64#3:inplace>r=int64#7:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = *(uint8 *) (s + n):>r=int64:r: r = *(uint16 *) (s + n):>r=int64:r: r = *(uint32 *) (s + n):>r=int64:r%32: r = *(uint64 *) (s + n):>r=int64:r: r = *( int8 *) (s + n):>r=int64:r: r = *( int16 *) (s + n):>r=int64:r: r = *( int32 *) (s + n):>r=int64:r: r = *( int64 *) (s + n):>r=int64:r: r = *(uint8 *) (s + t):>r=int64:r: r = *(uint16 *) (s + t):>r=int64:r: r = *(uint32 *) (s + t):>r=int64:r%32: r = *(uint64 *) (s + t):>r=int64:r: r = *( int8 *) (s + t):>r=int64:r: r = *( int16 *) (s + t):>r=int64:r: r = *( int32 *) (s + t):>r=int64:r: r = *( int64 *) (s + t):>r=int64:r: r = *(uint8 *) (s + t * 8):>r=int64:r: r = *(uint16 *) (s + t * 8):>r=int64:r: r = *(uint32 *) (s + t * 8):>r=int64:r%32: r = *(uint64 *) (s + t * 8):>r=int64:r: r = *( int8 *) (s + t * 8):>r=int64:r: r = *( int16 *) (s + t * 8):>r=int64:r: r = *( int32 *) (s + t * 8):>r=int64:r: r = *( int64 *) (s + t * 8):>r=int64:r: r = *(uint8 *) (s + n + t * 8):>r=int64:r: r = *(uint16 *) (s + n + t * 8):>r=int64:r: r = *(uint32 *) (s + n + t * 8):>r=int64:r%32: r = *(uint32 *) (s + n + t * 4):>r=int64:r%32: r = *(uint64 *) (s + n + t * 8):>r=int64:r: r = *( int8 *) (s + n + t * 8):>r=int64:r: r = *( int16 *) (s + n + t * 8):>r=int64:r: r = *( int32 *) (s + n + t * 8):>r=int64:r: r = *( int64 *) (s + n + t * 8):>r=int64:r: r = *(uint8 *) (s + n + t):>r=int64:r: r = *(uint16 *) (s + n + t):>r=int64:r: r = *(uint32 *) (s + n + t):>r=int64:r%32: r = *(uint64 *) (s + n + t):>r=int64:r: r = *( int8 *) (s + n + t):>r=int64:r: r = *( int16 *) (s + n + t):>r=int64:r: r = *( int32 *) (s + n + t):>r=int64:r: r = *( int64 *) (s + n + t):>r=int64:r: (uint32) r += *(uint32 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: (uint32) r += *(uint32 *) (s + n) + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r &= *(uint32 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r |= *(uint32 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r ^= *(uint32 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r += *(uint32 *) (s + n + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r -= *(uint32 *) (s + n + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r &= *(uint32 *) (s + n + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r |= *(uint32 *) (s + n + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r ^= *(uint32 *) (s + n + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r += *(uint32 *) (s + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r -= *(uint32 *) (s + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r &= *(uint32 *) (s + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r |= *(uint32 *) (s + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r ^= *(uint32 *) (s + t * 8):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r += *(uint64 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry: r += *(uint64 *) (s + n) + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<:>?carry:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r &= *(uint64 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r |= *(uint64 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r ^= *(uint64 *) (s + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: *(uint8 *) (s + n) = r:r=int64:r: r = s:>r=int3232:r: r = s:>r=int3232:r: r = *(uint32 *) (s + n):>r=int3232:r: *(uint32 *) (s + n) = r:r,#n(r=int6464:r: r = *(uint32 *) (s + n + t * 4):>r=int6464:r: r = *(uint32 *) (s - n + t * 4):>r=int6464:r: r = *(uint32 *) (s + n):>r=int6464:r: r = s:>r=int3232:r: s = r:>s=stack64:s: r &= s:inplace>r=int3232:r=int3232:r=int3232:r=int3232:r=int6464:r=int6464:>= n:inplace>r=int6464:>= n:inplace>r=int6464:>= n:inplace>r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r: *(uint32 *) (s + n) = r:r,#n(r=int6464:r: *(uint64 *) (s + n) = r:r,#n(r=int6464:asm/movd r: r = s[0]:r=int64:asm/movq r: r = 0:>r=int6464:asm/pxor >r,>r: r = s:>r=int64:r: r = s:>r=int6464:r: r = s:>r=int6464:r: r &= s:inplace>r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r: r = s <<< 32:>r=int6464:r: r = s <<< 64:>r=int6464:r: r = s <<< 96:>r=int6464:r: r = s[0,0,0,0]:>r=int6464:r: r = s[1,1,1,1]:>r=int6464:r: r = s[2,2,2,2]:>r=int6464:r: r = s[3,3,3,3]:>r=int6464:r: r >>= 8:inplace>r=int6464:>= 16:inplace>r=int6464:>= 24:inplace>r=int6464:>= 32:inplace>r=int6464:>= 40:inplace>r=int6464:>= 48:inplace>r=int6464:>= 56:inplace>r=int6464:>= 64:inplace>r=int6464:>= 72:inplace>r=int6464:>= 80:inplace>r=int6464:>= 88:inplace>r=int6464:>= 96:inplace>r=int6464:>= 104:inplace>r=int6464:>= 112:inplace>r=int6464:>= 120:inplace>r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=float80:fpstack/load:asm/fldz: stackpop r:r=float80:r=float80:r=float80:r=float80:r=float80:#n:fpstack/load:asm/fldl #n(%rip): r = *(float64 *) (s + n):>r=float80:r=float80:#n:fpstack/load:asm/fildl #n(%rip): r = *(int32 *) (s + n):>r=float80:r=float80:r=float80:r=float80:r=float80:r=float80:r=float80:r=stack64:r: r = s:>r=int64:r: r top = n:>r=stack64:#n:asm/movl $#n,!shift4>r: inplace r bottom = s:inplace>r=stack64:r=int64:r%32: r = top s:>r=int64:r%32: r += s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r += s + carry:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r -= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r &= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r |= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r ^= s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint32) r += s:inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: r = *(float64 *) &s:>r=float80:r=float80:r=float80:r=float80:s=stack64:fpstack/store:asm/fstl >s!nopop:asm/fstpl >s!pop: :stackbytes:stack128:16: stack128 r:var/r=stack128: r = &s:>r=int64:inplace>s=stack128:r: r = &s:>r=int64:inplace>s=stack1024:r: ((uint32 *)&r)[0] = 0:>r=stack128:asm/movl $0,>r: ((uint32 *)&r)[1] = 0:inplace>r=stack128:r=stack128:r=stack128:r=stack128:r: ((uint32 *)&r)[1] = s:inplace>r=stack128:r=stack128:r=stack128:r=int64:r%32: r = ((uint32 *)&s)[1]:>r=int64:r%32: r = ((uint32 *)&s)[2]:>r=int64:r%32: r = ((uint32 *)&s)[3]:>r=int64:r%32: r = s:>r=int6464:r: r = s:>r=stack128:r: r = *(int128 *) (s + n):>r=int6464:r: (unaligned) r = *(int128 *) (s + n):>r=int6464:r: r = *(int128 *) (s + n + t):>r=int6464:r: *(int128 *) (s + n) = r:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int64:inplace>s=stack320:r: r = &s:>r=int64:inplace>s=stack512:r: r = &s:>r=int64:inplace>s=stack1408:r: enter f:enter/f:asm/.text:asm/.p2align 5:asm/.globl _#f:asm/.globl #f:asm/_#f!colon:asm/#f!colon:asm/mov %rsp,%r11:asm/and $31,%r11:asm/add $!frame,%r11:asm/sub %r11,%rsp: enter f stackaligned4096 n:enter/f:#n:asm/.text:asm/.p2align 5:asm/.globl _#f:asm/.globl #f:asm/_#f!colon:asm/#f!colon:asm/mov %rsp,%r11:asm/sub $#n,%r11:asm/and $4095,%r11:asm/add $!frame,%r11:asm/sub %r11,%rsp: leave:nofallthrough:leave:asm/add %r11,%rsp:asm/mov %rdi,%rax:asm/mov %rsi,%rdx:asm/ret: input r:input/r: output r:output/r: caller r:caller/r: int32323232 r += n:inplace>r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r=int6464:r: r = unpack dwords of r and s:inplace>r=int6464:r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: (uint8) r ^= *(uint8 *) (s + t + n):inplace>r=int64:?=:>?unsigned>:>?unsigned<:>?signed>:>?signed<: int32323232 r = (r == n)q~0#0:inplace>r=int6464: